Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
service squid start
chkconfig squid on

Finding a proper mirror site

yum is normally configured to selected the optimal site for downloading packages based on speed and on spreading the traffic equally among several mirror sites. When using a download proxy, you'll want to choose a single site for downloading packages that has the proper cache settings, is up reliably and is relatively quick. Be sure you understand why this is true otherwise you risk decreasing your build times and filling your disk cache quickly.

Here are the steps for selecting the proper mirror site.

1.) Check the CentOS mirror sites page for a single site that would be best for a mirror site for you.

2.) Test the mirror's cache settings for that site are set properly.

For a squid server : localhost
CentOS mirror site : http://mirrors.rit.edu/centos

You would run this command twice :

Code Block

http_proxy=http://localhost:3128 \
  wget -S http://mirrors.rit.edu/centos/5.5/os/i386/repodata/repomd.xml 2>&1 \
  | grep X-Cache

Where you'll see on the first run

Code Block

  X-Cache: MISS from swift.hubler.us
  X-Cache-Lookup: MISS from swift.hubler.us:3128

Then on the second run

Code Block

  X-Cache: HIT from swift.hubler.us
  X-Cache-Lookup: HIT from swift.hubler.us:3128

If you do not see HIT, select a different mirror.

3.) Follow steps 1 and 2 again to select a good fedora mirror fedora mirror list. You'll need to do this even if you're not planning for build on Fedora because the build system will require you to specify a fedora mirror url.

Building with a download proxy

To tell sipXecs build scripts to use your caching proxy, just add this configure switch when preparing to build sipXecs

Code Block

./configure ... \
   --with-yum-proxy=http://

...

swift.hubler.us:3128 \
   CENTOS_BASE_URL=http://mirrors.rit.edu/centos \
   FEDORA_BASE_URL=http://mirrors.rit.edu/fedora/linux

You should verify caching is working by your second build by looking for the string TCP_MEM_HIT in /var/log/squid/access.log.

...