Posso facilmente fazer um “espelho” de host que armazena em cache pacotes Debian baixados?

3

Temos uma configuração de cache da web do Squid que é usada para fazer o cache de downloads de pacotes, para que todas as máquinas aqui não tenham que fazer o download de tudo de forma independente. O instalador solicita um espelho e um proxy. Contanto que cada máquina use exatamente o mesmo espelho (aqui, http.us.debian.org ) e o proxy, então funciona.

Isso é um tanto chato, já que envolve 'inserir informações manualmente' e digitá-las a cada vez (como o instalador faria ftp.us.debian.org , que o Squid não percebe ser idêntico).

O instalador é padronizado para apenas mirror , existe uma maneira de fazer isso funcionar? Então eu posso ser preguiçoso e apertar um monte?

    
por derobert 02.08.2017 / 19:52

2 respostas

4

Por ter um cache deb local no servidor do meu farm de servidores Debian, eu realmente prefiro usar apt-cacher-ng (servidor proxy de cache para repositórios de software)

É um proxy especialmente APT / deb ciente, bastante personalizável e pode armazenar em cache seus arquivos deb por um bom tempo (configurável).

Você instala com:

apt-get install apt-cacher-ng

E, por padrão, armazena em cache os repositórios / debs em /home/apt-cacher-ng . Sob este diretório, ele cria um diretório por repositório usado em seus servidores Debian, então as distros são usadas, muito similares às estruturas de espelhamento. Como um bônus adicional, também é muito mais fácil buscar manualmente um deb do cache daqui, do que de um servidor Squid.

Para usá-lo em todos os seus servidores, adicione ao diretório /etc/apt/apt.conf.d a um arquivo 02proxy com o conteúdo:

Acquire::http { Proxy "http://your_proxy_APT_server:3142"; };

Depois de adicionar esse arquivo, o gerenciador de pacotes do Debian fará o proxy de todos os repositórios configurados através do proxy HTTP APT configurado.

Ele também tem uma página de estatística interessante para consultar sua atividade.

Você também pode precisar abrir o 3142 / TCP em seus firewalls para permitir que os servidores conversem com seu novo servidor APT de proxy.

A vantagem dessa configuração é que, além de fazer o download de apenas uma cópia deb para uma carga de servidores, economizar largura de banda e o uso de repositórios públicos permite atualizar servidores internos que não precisam ter acesso à Internet (exemplo: DHCP servidores).

Como documentado em Apêndice B do Guia de Instalação Oficial , você pode fazer com que o seu servidor DHCP forneça um arquivo de pré-configuração, adicionando algo como isto em sua configuração:

if substring (option vendor-class-identifier, 0, 3) = "d-i" {
    filename "http://host/preseed.cfg";
}

Em seguida, usando essas opções de pré-configuração, você pode configurar o espelho e o proxy automaticamente:

d-i mirror/protocol string http
d-i mirror/country string manual
d-i mirror/http/hostname string http.us.debian.org
d-i mirror/http/directory string /debian
d-i mirror/http/proxy string http://your_proxy_APT_server:3128/

Veja também: Como configurar o servidor de cache do Apt no Ubuntu ou no Debian

    
por 02.08.2017 / 21:01
0

edit: A abordagem de pré-configuração que editei na resposta de Rui F Ribeiro funciona com o Squid - ou qualquer outro proxy - também, e (contanto que você esteja usando DHCP) é provavelmente uma abordagem melhor.

Primeiro, mirror será preenchido com o nome de domínio do sistema, portanto, adicione uma entrada de DNS para mirror.yourdomain.com . Aponte isso para um servidor executando o Apache; neste exemplo, o mesmo servidor também executa o Squid.

Certifique-se de que o Apache tenha mod_proxy e mod_proxy_http ativado (por exemplo, a2enmod proxy; a2enmod proxy_http no Debian). Em seguida, adicione um novo host virtual:

<VirtualHost *:80>
    ServerName mirror.yourdomain.com
    ServerAlias mirror

    ProxyPass /debian http://http.us.debian.org/debian
    ProxyRemote http http://localhost:3128/
    ProxyVia off
</VirtualHost>

Após reiniciar o Apache, os downloads de pacotes do espelho "espelho" do Debian devem passar pelo cache.

    
por 02.08.2017 / 19:52