kickstart自動インストール


kickstart自動インストール
1、背景绍介今多くの企业はすべてこのような需要があって、1回に何台のサーバーをインストールして、通常の光ディスクのインストールはすぐ时间も骨が折れるので、1台1台のインストールしかできなくて、サーバーの数が数十~数百台の时、このようにインストールの効率は大いに下がって、このようにオートメーションの配置のソフトウェアが诞生して、よく使うのはkickstartとcubblerがあります
1.1 PXEPXE(preboot execute environment、プリスタート実行環境)とは、Intel社が開発した最新技術であり、Client/Serverのネットワークモードで動作し、ワークステーションがネットワークを通じて遠隔サーバからイメージをダウンロードすることをサポートし、これによってネットワークを通じてオペレーティングシステムを起動することをサポートし、起動中に端末はサーバにIPアドレスを割り当てることを要求する.TFTP(trivial file transfer protocol)またはMTFTP(m u lticasttrivial file transferprotocol)プロトコルで起動パッケージをダウンロードしてホストメモリに実行します.この起動パッケージにより端末(クライアント?)の基本ソフトウェア設定が完了し、サーバに予めインストールされている端末オペレーティングシステムを起動する.PXEはWindows 95/98/2000/windows 2003/windows 2008/windows 2008/winXP/win 7/win 8、linuxなど多くのオペレーティングシステムを起動することができる.
1.2 kickstart動作メカニズム1).PXE ClientはDHCPに対して、PXE Clientが自分のPXEネットワークカードから起動するように要求し、PXEBootROM(セルフ起動チップ)を介してUDP(簡易ユーザデータ報知プロトコル)でブロードキャスト要求を送信し、本ネットワークのDHCPサーバにIPを請求する.2).DHCPサーバー提供情報DHCPサーバーはクライアントの要求を受け取って、合法的なPXEClientの要求に来るかどうかを検証して、それを通じてクライアントに1つの“提供”の応答を検証して、この“提供”の応答の中でクライアントのために割り当てるIPアドレス、pxelinuxスタートアッププログラム(TFT P)の位置、およびプロファイルの所在地を含みます.3).PXEクライアントが起動ファイルのダウンロードを要求クライアントがサーバの「応答」を受信すると、1フレームに応答して起動に必要なファイルの転送を要求する.これらの起動ファイルには、pxelinuxが含まれる.0、pxelinux.cfg/default、vmlinuz、initrd.imgなどのファイル.4).Boot Serverは、クライアントの要求に応答してファイルを転送します.サーバがクライアントの要求を受信すると、クライアントとサーバの間でより多くの情報が応答し、起動パラメータを決定します.BootROMは、TFT P通信プロトコルによりBoot Serverからインストーラ起動に必要なファイル(pxelinux.0、pxelinux.cfg/default)をダウンロードする.defaultファイルのダウンロードが完了すると、そのファイルで定義されているブート順に従ってLinuxインストーラのブートカーネルが起動します.5).自動応答ファイルのダウンロードを要求するクライアントはpxelinuxを通過する.cfg/defaultファイルがLinuxのカーネルインストールに成功した後、インストーラはまずどのインストールメディアを通じてlinuxをインストールするかを決定しなければなりません.ネットワークインストール(NFS、FTP、HTTP)を通じている場合、この時点でネットワークを初期化し、インストール元の場所を特定します.次にdefaultファイルで指定する自動応答ファイルksが読み出される.cfgが存在する場所で、その場所に基づいてファイルのダウンロードを要求します.
ケース:環境:ローカルエリアネットワーク内で、1台のサーバー(Kickstart+DHCP+NGINX(httpd)+TFT P+PXE)を開き、他のクライアントにkickstart自動インストールを提供する
   kickstart     ,        :Kickstart+DHCP+NGINX(httpd)+TFTP+PXE

     :

~]# iptables -F~]# setenfore 0
(1)掛載トレイ
~]# mount/dev/cdrom/mnt
(2)インストール構成http
~]# yum intall httpd -y~]# cp -fr/mnt/*/var/www/html/centos
(3)実装構成TFT P
~]# yum install tftp-server -yum~]# vim/etc/xinent.d/tftpserver_args=-s/var/lib/tftpbootデフォルトディレクトリを/tftpbootdisable=yesに変更
~]#/etc/init.d/xinetd start ~]# mkdir/tftpboot~]# cp/mnt/images/pxeboot/initrd.img/tftpboot/~]# cp/mnt/images/pxeboot/vmlinuz/tftpboot/~]# cp/mnt/isolinux/boot.msg/tftpboot/~]# mkdir/tftpboot/pxelinux.cfg~]# cp/mnt/isolinux/isolinux.cfg/tftpboot/pxelinux.cfg/default~]# vim/tftpboot/pxelinux.cfg/default default centos6.8デフォルトは新しく追加されたlabel centos 6に変更されました.8kernel vmlinuzappend ks=http://192.168.110.19/centos6.8/ks.cfg ksdevice=0 initrd=initrd.img
(4)dhcpの構成
~]# yum install -y dhcp
ddns-update-style interim;ignore client-updates;next-server 192.168.110.19;filename "pxelinux.0";option routers 192.168.110.254;option subnet-mask 255.255.255.0;allow booting;default-lease-time 600;max-lease-time 7200;subnet 192.168.110.0 netmask 255.255.255.0 {range dynamic-bootp 192.168.110.18 192.168.110.50;}
~]#/etc/init.d/dhcpd start
(5)kickstartファイルはsystem-config-kickstartを使用してksを生成または自分で作成することができる.cfgファイル
~]# yum install system-config-kickstart -y
~]# vim/var/www/html/centos/ks.cfg
firewall --disabledinstallurl --url="http://192.168.110.19/centos6.8"rootpw --iscrypted $1$Ccr5k0ki$fc3VigVjS8WsEQbB09y/R.auth --useshadow --passalgo=sha512textfirstboot --disablekeyboard uslang en_USselinux --disabledlogging --level=inforeboottimezone Asia/Shanghainetwork --bootproto=dhcp --device=eth0 --onboot=onbootloader --location=mbrzerombrclearpart --all --initlabelpart/--fstype="ext4"--grow --size=1
%packages --nobase@core
%end
注:本例ks.cfgはルート分割のみ