kickstart和dhcp

自動安裝虛擬機

使用 kickstart, 系統管理員可以創建一個包含安裝期間所有常見問題的答案的文件,以自動安裝 Red Hat Enterprise Linux Kickstart 類似於 Oracle solaris 中的 Jumpstart 或 Microsoft Windows 的無人值守安裝。

system-config-kickstart是實現自動化安裝部署的軟件。

1.生成ks.cfg
先下載system-config-kickstart
這裏寫圖片描述

這裏寫圖片描述
system-config-kickstart ##調出生成ks.cfg的窗口
這裏寫圖片描述
生成ks.cfg的步驟如下:

(1)Basic Configuration ##基礎配置
Root Password和Confirm Password爲root密碼,必須一致。
這裏寫圖片描述

(2)Installation Method ##安裝方式
這裏寫圖片描述

(3)Boot Loader Options ##引導加載程序選項
這裏寫圖片描述

(4)Partition Information ##分區
這裏寫圖片描述

這裏寫圖片描述

這裏寫圖片描述

這裏寫圖片描述

(5)Network Configuration ##網絡配置
這裏寫圖片描述

(6)Authentication ##認證
這裏寫圖片描述

(7)Firewall Configuration ##防火牆配置
這裏寫圖片描述

(8)Display Configuration ##顯示配置
這裏寫圖片描述

(9)Package Selection ##安裝包選擇
這裏寫圖片描述

(10)Pre-Installation Script ##編寫腳本,安裝虛擬機之前會啓動腳本
這裏寫圖片描述

(11)Post-Installation Script ##編寫腳本,安裝虛擬機之後會啓動腳本
這裏寫圖片描述
上述11個步驟逐項完成,點擊左上角的file–>save,保存ks.cfg。
這裏寫圖片描述
然後將ks.cfg複製到/var/www/html/
這裏寫圖片描述

vim   /var/www/html/ks.cfg
%packages   ##安裝包(由於system-config-kickstart的第九項無法選擇安裝包,在這裏需要額外設置)
lftp        ##安裝包中添加lftp軟件
@base       ##表示基本插件
%end        ##目的結束

ksvalidator ks.cfg ##查看ks.cfg中內容的語法,不能檢查配置問題
這裏寫圖片描述

注意:
編輯ks.cfg時可以根據需要添加內容,如:

         %post
         touch /mnt/file{1..10}   ##安裝虛擬機後新建file1,..file10。         
         %end
kickstart文件腳本參數分析
%end                        目的結束
%packages                   安裝包
%pre                        安裝前執行腳本
%post                       安裝後執行腳本
url                         安裝源路徑
repo yum                    源地址
text                        文本安裝
vnc                         安裝是開啓vnc
Askmethod                   交互模式
clearpart                   刪除分區
part                        分區策略
ignoredisk                  跳過磁盤
bootloader                  引導程序設定
volgroup                    lvm組設定
logvol                      lvm設定
zerombr                     清空mbr
network                     網絡設定
firewall                    火牆設定
lang                        語言設定
keyboard                    鍵盤設定
timezone                    時區設定
auth                        認證方式選擇
rootpw                      root密碼
seliux                      selinux設定
services                    開機啓動服務%packages
group                       組建立
user                        用戶建立
logging                     安裝日誌設定
fireboot                    首次啓動設定
reboot.poweroff.halt        安裝完成後自動執行動作

2.腳本編輯
vim CreateVm.sh

#!/bin/bash
virt-install \
--name $1 \
--ram 1024 \
--file /var/lib/libvirt/images/$1.qcow2,bus=virtio \
--file size 8 \
--network source=br0,model=virtio \
--location  http://172.25.254.66/rhel7.2 \
--extra args "ks=http://172.25.254.66/rhel7.2/ks.cfg" \
--vcpus 1 &

這裏寫圖片描述

安裝程序指向kickstart文件
ks=http://server/dir/file
ks=ftp://server/dir/file
ks=nfs:server:/dir/file
ks=hd:device:/dir/file
ks=cdrom:/dir/file

3.yum源搭建

[rhel7.0]
name=rhel7.2
baseurl http://172.25.254.66/rhel7.2
gpgcheck=0
enabled=1

4.測試
sh CreateVm.sh linux

dhcp

DHCP是Dynamic Host Configuration Protocol,動態主機配置協議,是用來在物理網絡給主機分配ip地址的一種工作方式。

區別與bootp,一次分配終身使用的缺點。DHCP提出租約的概念,使得可以根據需要動態確定主機需要的IP地址,並且IP可以循環使用。

工作原理:
Client:DHCP DISCOVER ##客戶端向相同網絡發送廣播包,尋找DHCP服務器
Server:DHCP OFFER ##如果DHCP服務段接收到DISCOVER包,則向客戶端回覆OFFER廣播包
Client:DHCP REQUEST ##客戶端受到DHCP服務器的OFFER廣播包後,則確定DHCP服務器,繼續向DHCP服務器發送REQUEST包,申請ip信息。
Server:DHCP ACK ##DHCP服務端向客戶端發送ACK包,攜帶ip和租約信息給客戶端,DHCP發現過程結束。

1.安裝
yum install dhcp -y
這裏寫圖片描述

這裏寫圖片描述
2.生成配置文件
cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf
這裏寫圖片描述

3.修改配置文件完成配置
vim /etc/dhcp/dhcpd.conf

  1 # dhcpd.conf
  2 #
  3 # Sample configuration file for ISC dhcpd
  4 #
  5 
  6 # option definitions common to all supported networks...
  7 option domain-name "westos.com";              ##指定域名
  8 option domain-name-servers 192.168.43.1;  
  ##指定客戶主機獲得到的dns
  9 
 10 default-lease-time 600;         ##最短租約期
 11 max-lease-time 7200;            ##最長租約期
 .  .   .  .  .  .  
 27 #subnet 10.152.187.0 netmask 255.255.255.0 {
 28 #}
 ##刪除27與28行或者註釋掉
 29 
 30 # This is a very basic subnet declaration.
 31 
 32 subnet 172.25.254.0 netmask 255.255.255.0 {                    ##netmask 255.255.255.0爲子網掩碼
 33   range 172.25.254.109 172.25.254.200;     
 ##IP地址隨機從172.25.254.109與172.25.254.200之間獲取
 34   option routers 172.25.254.9;
 35 }

 ##36行以後的全部刪除

這裏寫圖片描述

這裏寫圖片描述
4.重啓服務
systemctl restart dhcpd

5.測試
拔掉網線,shell窗口輸入sh /mnt/CreateVm.sh node1

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章