[Users] New vzpkg, templates and package caching daemon

Kir Kolyshkin kir at openvz.org
Wed Sep 10 11:14:30 EDT 2008


A few more questions to Robert (sorry for top-posting)

1. Can you explain how you deal with chicken-and-egg problem? I mean, to 
run yum/rpm inside a VE you need to have those packages (and their deps) 
inside the VE. In "old" vzpkg, we use external rpm/yum (vzrpm and vzyum) 
to do that. Since you are not relying on that anymore, how do you 
perform an initial installation of rpm/yum/their dependencies in a newly 
created VE?

(My own solution to this is to have a list of URLs to a few packages 
comprising a minimal system in which rpm could work, and then 
download/unpack (using rpm2cpio | cpio -id) those into a newly created 
empty container. When we can run rpm --initdb inside and do 'yum install 
<full list of packages>". The bad thing about that is (per-distro 
per-version list of) hard-coded package names and inability to use 
packages from "updates" repo since they are ever-changing (but packages 
in "base" repo should be OK).

2. Is it possible to have opensuse template metadata? AFAIK opensuse 
lacks yum and "you" (YaST Online Updater) should be used instead.

Robert Nelson wrote:
> Roberto Mello wrote:
>> On Fri, Sep 5, 2008 at 9:27 PM, Robert Nelson <robertn at the-nelsons.org> wrote:
>>   
>>> I have a preliminary version of the new vzpkg utilities ready for testing.
>>>
>>> These new tools support creating templates for 32 and 64 bit flavours of the
>>> following:
>>>   Centos 4 and 5,
>>>   Fedora 7, 8 and 9,
>>>   Debian Sarge and Etch,
>>>   Ubuntu Feisty, Gutsy and Hardy.
>>>
>>> They are extensible and will eventually support OpenSUSE and Gentoo.
>>>     
>>
>> Fantastic! Thanks for doing this and for sharing. Will definitely be
>> taking a look at this.
>>
>>   
>>> In addition, I've created pkg-cacher, a transparent caching proxy daemon
>>> optimized for Debian and RPM packages.  It is based on apt-cacher version
>>> 1.6.4 available with Debian.  This version has been modified to understand
>>> RedHat RPM repositiories.  It also adds support for the HTTP Range header
>>> and deals correctly with files which have the same name but different
>>> content on different distributions or in some cases different versions of
>>> the same distribution.
>>>     
>>
>> In my experience I've found that just setting up Squid and telling my
>> different machines to use the proxy (Acquire::http::Proxy
>> "http://proxy.hostname:3128/";) has been the best pacakge caching
>> solution.
>>
>> Works accross different packaging systems too.
>>
>>   
>
> There are a few advantages of using pkg-cacher versus squid:
>
>     It understands the difference between packages (static content) 
> and metadata files (dynamic content).
>
>     It only keeps a single copy of a package even if it is shared 
> across multiple distributions. versions or accessed from multiple mirrors.
>
>     Removal of stale packages can be based on whether the package is 
> referenced by any repositories using the metadata.
>
> This means less downloads and less disk usage. Even a 250 GB disk 
> starts looking small once you deal with multiple distros, versions and 
> mirrors :-)
>>> In order to make installation easy I've setup repositories for 32 and 64 bit
>>> versions of CentOS 4, 5 and Fedora 7, 8 and 9.  I'll be producing packages
>>> for Debian and Ubuntu as HN later.
>>>     
>>
>> I can help with Debian packages if you need.
>>
>> Roberto
>>
>>   
> Thanks for the offer, the only reason I didn't release it at this time 
> is I didn't have a Debian HN set up for testing yet.  Should be 
> available in the next day or so.



More information about the Users mailing list