Данный документ написан для тех системных администраторов, у которых есть несколько серверов под управлением одной и той же ОС (В качестве примера выбрана Centos 4).
Дело в том, что при количестве серверов больше 2-х уже имеет смысл поставить на одном из них сервер обновлений с которого все остальные сервера Вашей компании будут обновляться. Это выгодно по нескольким причинам:
- Чем больше количество серверов тем больше Вы будете экономить на оплате трафика т. к. обновления закачаются из сети только 1 раз.
- Многие системные администраторы не придают обновлению системы достаточного количества внимания , что отражается на безопасности системы и на надежности функционирования.
Приступим к настройке.
Настройка сервера обновлений
1. На выбранном Вами сервере который Вы планируете использовать как сервер обновлений нам понадобятся следующие пакеты:
- httpd
- rsync
Проверить их наличие можно командами:
-
rpm -q httpd rpm -q rsync
Создайте файл с именем updates в каталоге /etc/cron.daily
-
touch /etc/cron.daily/updates
следующего содержания:
-
#!/bin/sh rsync="/usr/bin/rsync -aqHz --delete --bwlimit=256" mirror=ftp-stud.fht-esslingen.de::centos/ ver=4 archlist="i386 x86_64" baselist="os updates" local=/var/mirror/centos for arch in $archlist do for base in $baselist do remote=$mirror/$ver/$base/$arch/ $rsync $remote $local/$ver/$base/$arch/ done done
Тем самым мы указали, что нас интересует 4 ветка Centos, и что Нам необходимо синхронизировать файлы для архитектуры i386 и x86_64. Каталоги которые нас интересуют это os и updates.
Создайте каталоги необходимые для работы данного скрипта:
-
mkdir /var/mirror/centos mkdir /var/mirror/centos/4 mkdir /var/mirror/centos/4/os mkdir /var/mirror/centos/4/updates
Запустите данный скрипт на выполнение – и процесс синхронизации начнется.
Внимание !!!
Первоначально из интернета будет выкачано примерно 7 ГБ данных.
Поэтому если у Вас есть DVD диски с текущей (на момент написания статьи 4.4) версией Centos и вы хотите сэкономить несколько гигабайт трафика сделайте следующее (в примере имеется ввиду, что DVD диск с CentOS для архитектуры i386):
Создайте каталог:
-
mkdir /var/mirror/centos/4/i386
Скопируйте данные с компакт диска в данный каталог (Подразумевается, что DVD диск смонтирован в каталог /media/dvd)
-
cp -R /media/dvd /var/mirror/centos/4/i386
Итак данные были синхронизированы. Теперь нам необходимо настроить и запустить WEB сервер Apache.
В каталоге /etc/httpd/conf.d создайте файл centos.conf следующего содержания:
-
Alias /centos/ /var/rsync/centos/ <Directory /var/rsync/centos/> DirectoryIndex index.php Options -Indexes AllowOverride all order allow,deny allow from all </Directory>
После этого запустите сервер apache командой:
-
service httpd start
Настройка клиента
На любом из Ваших серверов зайдите в каталог /etc/yum.repos.d
В данный момент там находятся 2 файла CentOS-Base.repo и CentOS-Media.repo переименуйте их:
-
mv CentOS-Base.repo CentOS-Base.repo.disable mv CentOS-Media.repo CentOS-Media.repo.disable
Создайте в этом каталоге файл my.repo со следующим содержанием:
-
[base] name=CentOS-$releasever - Base baseurl=http://10.0.0.1/$releasever/os/$basearch/ gpgcheck=1 gpgkey=http://10.0.0.1/RPM-GPG-KEY-centos4 [update] name=CentOS-$releasever - Updates baseurl=http://10.0.0.1/$releasever/updates/$basearch/ gpgcheck=1 gpgkey=http://10.0.0.1/RPM-GPG-KEY-centos4
Где вместо 10.0.0.1 укажите IP адрес сервера обновлений или его DNS имя.
Затем выполните команду:
-
yum update
Вы должны увидеть нечто подобное:
-
Setting up Update Process Setting up repositories base 100% |=========================| 1.1 kB 00:00 update 100% |=========================| 951 B 00:00 Reading repository metadata in from local files primary.xml.gz 100% |=========================| 119 kB 00:00 update : ################################################## 346/346
Это значит что Вы все делали правильно и сервер обновлений работает.
Автор: Денис Фролов
Постовой
Нет посетителей на Вашем сайте?
Разместите рекламу в AdАнонсах и они повалят “косяком”
http://www.evizitor.ru/adanons/
Разнообразные рецепты салатов на любой вкус.
2 комментов оставлено (Add 1 more)