Cache HTTP para minhas máquinas virtuais

Cache HTTP para minhas máquinas virtuais

Tenho várias máquinas virtuais Linux em execução no meu PC doméstico. Uma das peculiaridades do Linux é que toda vez que você executa um gerenciador de pacotes, ele deseja “atualizar” os repositórios de software configurados – o que basicamente significa que ele deseja baixar um arquivo da Internet. Se eu reverter para um instantâneo anterior da VM, na próxima vez que executar o gerenciador de pacotes, ele baixará novamente exatamente os mesmos dados [já que eles não existem mais na VM].

Parece uma pena desperdiçar largura de banda baixando indefinidamente os mesmos dados repetidamente, então fiquei pensando se há alguma maneira de configurar algum tipo de servidor proxy HTTP que armazene em cache os arquivos baixados. Não tenho ideia de como você faria uma coisa dessas. Em particular, ele precisa ser configurado para que as VMs não precisem “saber” que o cache está lá; precisa ser transparente. Mas não sei como fazer isso.

Alguma sugestão sobre qual software eu preciso usar? Seria bom se eu pudesse executá-lo no sistema operacional host Windows, mas também é possível executar uma pequena VM com um convidado Linux ...

Responder1

Esta apresentação de slidescobre diversas soluções para um proxy de cache de pacotes para distribuições Linux baseadas em Debian:

Aproximadamente

  • Funciona como um proxy: você informa quais espelhos usar e, em seguida, configura os clientes para usá-lo como único espelho.

    Instalando no host do pacote:sudo apt-get install apport

  • Configure o approx para usar seus espelhos de back-end favoritos em /etc/approx/approx.conf:

    debian   http://ftp.au.debian.org
    non-US   http://ftp.au.debian.org/non-US
    security http://security.debian.org/security
    
  • Configure o cliente para usar o servidor Aprox:

    deb http://localcache:9999/debian stable main contrib
    deb http://localcache:9999/security stable main
    

Apt-Proxy

  • Semelhante a Aprox.

    Instalar comsudo apt-get install apt-proxy

  • Configure espelhos favoritos em /etc/apt-proxy/apt-proxy-v2.conf:

    [debian]
    backends =
        http://ftp.au.debian.org
        http://ftp.us.debian.org
    
  • Configure clientes como com Aprox:

    deb http://localcache:9999/debian stable main contrib
    deb http://localcache:9999/security stable main
    

Eles foram projetados para serem executados no Linux, mas você poderá portá-los para o Windows com o mínimo de problemas. Gostaria de esperar que o Python seja independente de plataforma, mas descobri que os programadores costumam fazer suposições.

informação relacionada