|
Bog BOS: Установка Linux CentOS 5.3/5.4/5.5/5.6/5.7 для вычислительного узла (kickstart) |
Последние изменения: |
Последнее изменение файла: 2015.03.11
Скопировано с www.bog.pp.ru: 2024.11.23
Предварительно прочитайте несколько слов о RHEL 5 и CentOS 5.
Устанавливал с загрузкой по PXE, консоль через виртуальный последовательный порт iLO 2, для полностью автоматического выбора параметров используется kickstart.
Сервер HP ProLiant DL365 Generation 5, AMD Opteron 2356 (2.3 GHz), 16 GB памяти (8x2GB, DDR2 667), RAID контроллер HP Smart Array P400i, НЖМД SAS SFF HP DG146BAAJB (146 GB, 10000 RPM, Seagate, 2.5", 1 порт), CD-RW/DVD-ROM (ide1, /dev/hda, TSSTcorp CDW/DVD TS-L462D, udma2 (33)), USB 2.0, встроенный HP NC373i (Broadcom NetXtremeII BCM5708, bnx2, eth0 для управления, eth1 - не используется). Дополнительная двухпортовая сетевая карта NC360T (eth2 - port 1 основного сервера хранения HP MSA 2012i (iSCSI), eth3 - port 0 запасного сервера хранения). И ещё одна двухпортовая сетевая карта NC360T (eth4 - port 1 запасного сервера хранения, eth5 - port 0 основного сервера хранения). Настройки BIOS на оптимизацию вычислений.
А также серверы Intel SR2625URLX.
А также серверы Intel SR1530SH.
А также серверы Intel SR1680MV.
А также серверы HP ProLiant DL360 Generation 6.
А также серверы HP ProLiant DL585 Generation 6.
А также множество мелких железок и подключение к Fiber Channel и InfiniBand.
Назначение - вычислительный узел [и файловый сервер].
Установка и настройка системы загрузки по протоколу PXE (FTP сервер и дерево файлов для CentOS 5.3 x86_64 и CentOS 5.4 x86_64 и CentOS 5.5 x86_64 и CentOS 5.7 x86_64, сервер tftp и образы для загрузки с помощью pxeos, сервер dhcp и pxelinux ). Специальная конфигурация для загрузки данного сервера /tftpboot/linux-install/pxelinux.cfg/01-MACадрес, обеспечивающая установку нужной версии ОС с использованием kickstart-файла
default local timeout 100 prompt 1 label local localboot 1 label 0 localboot 1 label 1 kernel CentOS5.3-x86_64-install/vmlinuz append initrd=CentOS5.3-x86_64-install/initrd.img ramdisk_size=8262 \ method=ftp://ftp-сервер/pub/CentOS5.3/base/x86_64 ip=dhcp noipv6 \ syslog=адрес-сервера lang=en_US text serial console=ttyS0,9600n8 utf8 nofb \ ksdevice=bootif ks=ftp://ftp-сервер/pub/kickstarts/имя-сервера.cfg label 2 kernel CentOS5.4-x86_64-install/vmlinuz append initrd=CentOS5.4-x86_64-install/initrd.img [nodmraid] ramdisk_size=8262 \ method=ftp://ftp-сервер/pub/CentOS5.4/base/x86_64 ip=dhcp noipv6 \ syslog=адрес-сервера lang=en_US text serial console=ttyS0,9600n8 utf8 nofb \ ksdevice=bootif ks=ftp://ftp-сервер/pub/kickstarts/имя-сервера.cfg label 3 kernel CentOS5.5-x86_64-install/vmlinuz append initrd=CentOS5.5-x86_64-install/initrd.img [nodmraid] ramdisk_size=8262 \ method=ftp://ftp-сервер/pub/CentOS5.5/base/x86_64 ip=dhcp noipv6 \ syslog=адрес-сервера lang=en_US text serial console=ttyS0,9600n8 utf8 nofb \ ksdevice=bootif ks=ftp://ftp-сервер/pub/kickstarts/имя-сервера.cfg label 4 kernel CentOS5.7-x86_64-install/vmlinuz append initrd=CentOS5.7-x86_64-install/initrd.img [nodmraid] ramdisk_size=8262 \ method=ftp://ftp-сервер/pub/CentOS5.7/base/x86_64 ip=dhcp noipv6 \ syslog=адрес-сервера lang=en_US text serial console=ttyS0,9600n8 utf8 nofb \ ksdevice=bootif ks=ftp://ftp-сервер/pub/kickstarts/имя-сервера.cfg label 6 kernel CentOS6.2-x86_64-install/vmlinuz append initrd=CentOS6.2-x86_64-install/initrd.img ramdisk_size=16000 \ method=ftp://ftp-сервер/pub/CentOS6.2/base/x86_64 ip=dhcp noipv6 \ syslog=адрес-сервера lang=en_US text serial console=ttyS0,9600n8 utf8 nofb \ ksdevice=bootif ks=ftp://ftp-сервер/pub/kickstarts/имя-сервера.cfg
Подготовка файла с настройками kickstart (положить его на ftp://ftp-сервер/pub/kickstarts/имя-сервера.cfg)
install url --url ftp://ftp-сервер/pub/CentOS5.3/base/x86_64 #text #interactive cmdline reboot logging --host=syslog-сервер #firstboot --enabled firstboot --disabled lang en_US.UTF-8 keyboard us-acentos xconfig --resolution 1280x1024 --depth 32 --startxonboot --defaultdesktop gnome # только CentOS 5 network --activate --onboot yes --device eth0 --bootproto dhcp --noipv6 network --device eth1 --onboot no --bootproto dhcp --noipv6 network --device eth2 --onboot no --bootproto dhcp --noipv6 network --device eth3 --onboot no --bootproto dhcp --noipv6 network --device eth4 --onboot no --bootproto dhcp --noipv6 network --device eth5 --onboot no --bootproto dhcp --noipv6 #key --skip rootpw --iscrypted пароль selinux --disabled #firewall --enabled --port=22:tcp firewall --disabled authconfig --enableshadow --passalgo=sha512 --enableldapauth --ldapserver=имя --ldapbasedn=dc=имя --enableldaptls timezone --utc Europe/Moscow # ignoredisk --only-use=disk/by-path/pci-0000:0d:00.0-scsi-0:1:1:0 bootloader --location=mbr --driveorder=cciss/c0d0 # --driveorder=disk/by-path/pci-0000:0d:00.0-scsi-0:1:1:0 clearpart --drives=cciss/c0d0 --all --initlabel # --drives=disk/by-path/pci-0000:0d:00.0-scsi-0:1:1:0 part /boot --fstype ext3 --size=500 --ondisk=cciss/c0d0 # --ondisk=disk/by-path/pci-0000:0d:00.0-scsi-0:1:1:0 part pv.11 --size=100 --grow --asprimary # --ondisk=disk/by-path/pci-0000:0d:00.0-scsi-0:1:1:0 volgroup system --pesize=8192 pv.11 logvol / --fstype ext4 --name=root --vgname=system --size=15000 logvol swap --fstype swap --name=swap --vgname=system --size=40000 #logvol /usr/cads --fstype ext3 --name=cads --vgname=system --size=60000 #logvol /tmp --fstype ext4 --name=tmp --vgname=system --size=60000 # repo --name="CentOS 5.3" --baseurl=ftp://ftp/pub/CentOS5.3/base/x86_64/ --cost=100 # набор пакетов и групп отличается для CentOS 6.2 %packages @development-libs @editors @system-tools @russian-support @text-internet @gnome-desktop @core @base @ftp-server @legacy-software-development @java @legacy-software-support @smb-server @base-x @web-server @printing @admin-tools @development-tools @graphical-internet lapack lam pvm perl-libxml-perl perl-XML-SAX perl-Convert-ASN1 perl-DateManip perl-XML-Twig perl-XML-Grove perl-XML-Dumper python-imaging libstdc++43-devel perl-Crypt-SSLeay perl-Mozilla-LDAP perl-Archive-Zip perl-XML-NamespaceSupport emacs-nox emacs vim-X11 gnuplot-emacs nedit ktune rdesktop hwbrowser wireshark-gnome e4fsprogs gnutls-utils am-utils createrepo arpwatch lsscsi lslk arptables_jf audit net-snmp-utils mc sysstat iptraf lynx imake vlock libgnome-java gob2 libgtk-java libglade-java libgconf-java xorg-x11-xbitmaps mesa-libGLw-devel openmotif-devel mesa-libGLU-devel xorg-x11-server-sdk libXp-devel rsh-server tftp-server gconf-editor gnome-keyring-manager hal-gnome dasher kexec-tools convmv fipscheck hardlink x86info device-mapper-multipath gtk+ compat-db openssl097a qt4 compat-readline43 compat-openldap compat-slang openmotif22 xorg-x11-utils gftp OpenIPMI-tools libXpm yum-utils dialog -zsh -zisofs-tools -bluez-hcidump -bluez-gnome -slrn -fetchmail -mutt -cadaver -nano -pcmciautils -yum-updatesd -pam_smb -NetworkManager -NetworkManager-glib -NetworkManager-gnome -evolution -evolution-connector -krb5-auth-dialog -sysreport -rp-pppoe -irda-utils -ypbind -bluez-utils -dovecot -spamassassin -diffstat -valgrind %post # добавление групп пользователей /usr/sbin/groupadd -g ид имя # добавление пользователей /usr/sbin/useradd -c "описание" -g sys -m -r -u идентификатор -p кодированный-пароль имя # уменьшение зарезервированного места, отказаться от регулярных fsck /sbin/tune2fs -r 25000 -c -1 -i 0 /dev/system/root #/sbin/tune2fs -r 25000 -c -1 -i 0 /dev/system/cads # убрать лишние сервисы /sbin/chkconfig --level 12345 avahi-daemon off /sbin/chkconfig --level 12345 cpuspeed off /sbin/chkconfig --level 12345 firstboot off /sbin/chkconfig --level 12345 lm_sensors off /sbin/chkconfig --level 12345 pcscd off # динамический загрузчик echo "/usr/local/lib" >> /etc/ld.so.conf echo "/usr/local/lib64" >> /etc/ld.so.conf /sbin/ldconfig # настройка rpm rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 # 6 rpm -iv ftp://ftp/pub/EPEL5/x86_64/epel-release-5-4.noarch.rpm # 6 rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL # 6 # настройка yum (в нужных местах поменять номер версии) cat << 'EOF' > /etc/yum.repos.d/CentOS-Base.repo [base] name=CentOS-$releasever - Base #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os baseurl=ftp://ftp/pub/CentOS5.7/base/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 #released updates [updates] name=CentOS-$releasever - Updates #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates baseurl=ftp://ftp/pub/CentOS5.7/updates/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 #packages used/produced in the build but not released (только в версии 5) [addons] name=CentOS-$releasever - Addons #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons baseurl=ftp://ftp/pub/CentOS5.7/addons/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 #additional packages that may be useful [extras] name=CentOS-$releasever - Extras #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras baseurl=ftp://ftp/pub/CentOS5.7/extras/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 #additional packages that extend functionality of existing packages [centosplus] name=CentOS-$releasever - Plus mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus #baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 #contrib - packages by Centos Users [contrib] name=CentOS-$releasever - Contrib mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib #baseurl=http://mirror.centos.org/centos/$releasever/contrib/$basearch/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 EOF cat << 'EOF' > /etc/yum.repos.d/epel.repo [epel] name=Extra Packages for Enterprise Linux 5 - $basearch baseurl=ftp://ftp/pub/EPEL5/$basearch #mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch failovermethod=priority enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL [epel-debuginfo] name=Extra Packages for Enterprise Linux 5 - $basearch - Debug #baseurl=http://download.fedoraproject.org/pub/epel/5/$basearch/debug mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=epel-debug-5&arch=$basearch failovermethod=priority enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL gpgcheck=1 [epel-source] name=Extra Packages for Enterprise Linux 5 - $basearch - Source #baseurl=http://download.fedoraproject.org/pub/epel/5/SRPMS mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=epel-source-5&arch=$basearch failovermethod=priority enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL gpgcheck=1 EOF # multipath (в CentOS6 - /etc/multipath/bindings) cat << EOF > /var/lib/multipath/bindings # Format: # alias wwid # mpathИМЯ ВВИД-стр83 EOF # iLO (в CentOS6 нет настоящего inittab) cat << EOF >> /etc/inittab # For iLO s0:2345:respawn:/sbin/agetty 115200 ttyS0 vt100 EOF # need update warning mkdir /root/bin cat << EOF >> /root/bin/check-update.sh #!/bin/bash result=`yum -d 0 check-update` if [ $? ] then echo $result | mail -s "`hostname`: `cat /etc/redhat-release`: need updates" root fi EOF chmod u+x /root/bin/check-update.sh # синхронизация времени echo -e "23 5 * * 1 /root/bin/check-update.sh\n53 * * * * /usr/sbin/ntpdate -s -B ntp1 ntp2" | /usr/bin/crontab - # отключить prelink echo "PRELINKING=no" >> /etc/sysconfig/prelink # почтовый адрес root echo "root: адрес" >> /etc/aliases # IPMI cat << EOF >> /etc/rc.local modprobe ipmi_msghandler modprobe ipmi_devintf modprobe ipmi_si %end
Заходим на виртуальный последовательный порт через iLO 2
ssh адрес-iLO vsp
Сброс сервера ("Esc R Esc r Esc R").
Загрузка PXE с правильной сетевой карты ("Esc @")
При установке RHEL5 предлагается выбрать сетевую карту, хотя я указывал явно "ksdevice=bootif", хорошо хоть на виртуальном порту.
Журнал на сервер syslog выдаётся в самом конце установки, когда это уже неинтересно (и ошибки выводятся только на экран).
Ручная настройка:
в настройки самого grub serial --unit=0 --speed=9600 terminal --timeout=5 serial console в настройки ядра (можно оставить как вариант) kernel ... console=ttyS0,9600n8
mv /usr/bin/gnome-screensaver /usr/bin/gnome-screensaver.orig; cp /bin/true /usr/bin/gnome-screensaver
|
Bog BOS: Установка Linux CentOS 5.3/5.4/5.5/5.6/5.7 для вычислительного узла (kickstart) |
Последние изменения: |