1. 程式人生 > >COBBLER無人值守安裝

COBBLER無人值守安裝

.tar.gz 基於 manage 系統集成 init eth0 同時 some 上下

cobbler-自動安裝系統

1.1 cobber簡介

1.1.1 cobbler說明

  1. Cobbler是一個Linux服務器安裝的服務,可以通過網絡啟動(PXE)的方式來快速安裝、重裝物理服務器和虛擬機,同時還可以管理DHCP,DNS等
  2. Cobbler可以使用命令行方式管理,也提供了基於Web的界面管理工具(cobbler-web),還提供了API接口,可以方便二次開發使用。
  3. Cobbler是較早前的kickstart的升級版,優點是比較容易配置,還自帶web界面比較易於管理。
  4. Cobbler內置了一個輕量級配置管理系統,但它也支持和其它配置管理系統集成,如Puppet,暫時不支持SaltStack。

1.2 服務端部署

1.2.1 系統環境


系統:CentOS 7.4


ip: 外網:10.0.0.202 內網:172.16.1.202

1.2.2 安裝依賴包

 yum -y install cobbler cobbler-web dhcp tftp-server pykickstart httpd

1.2.3 修改配置文件

#備份、修改cobbler配置文件

cp /etc/cobbler/settings{,.bak}

sed -i ‘s/server: 127.0.0.1/server: 172.16.1.202/‘ /etc/cobbler/settings

sed -i ‘s/next_server: 127.0.0.1/next_server: 172.16.1.202/‘ /etc/cobbler/settings

sed -i ‘s/manage_dhcp: 0/manage_dhcp: 1/‘ /etc/cobbler/settings

sed -i ‘s/pxe_just_once: 0/pxe_just_once: 1/‘ /etc/cobbler/settings

#設置系統密碼 (加密)

sed -ri "/default_password_crypted/s#(.*: ).*#\1\"`openssl passwd -1 -salt ‘xzy‘ ‘123456‘`\"#" /etc/cobbler/settings

#即:default_password_crypted: "$1$oldboy$Npg9Pt9k98Mlg0ZeqHAuN1"

# openssl passwd -1 -salt ‘xzy‘ ‘123456‘ (以xzy為填充字符)

sed -i ‘s#yes#no#‘ /etc/xinetd.d/tftp

1.2.4 啟動服務

systemctl start rsyncd tftp.socket

#開機自啟 enable

systemctl enable rsyncd tftp.socket

systemctl restart httpd

systemctl restart cobblerd.service

1.2.5 檢查

#修改dhcp 配置文件

sed -i.ori ‘s#192.168.1#172.16.1#g;22d;23d‘ /etc/cobbler/dhcp.template

#將cobbler/dhcp.template同步到dhcp配置文件

cobbler sync

#檢查 cobbler check

錯誤1 : Some network boot-loaders are missing from /var/lib/cobbler/loaders, you may run ‘cobbler get-loaders‘ to download them

#解決方法:

  #網上下載

cobbler get-loaders

  #拷貝一份

tar xfP cobbler_load_for_CentOS7.tar.gz

#接下來即可web界面操作

1.3 cobbler-web頁面操作

網址:https://10.0.0.202/cobbler_web/

用戶名:cobbler 密碼:cobbler

1.3.1 登錄

技術分享圖片

1.3.2 導入鏡像

前提:選擇鏡像並掛載

mount /dev/cdrom /mnt/

技術分享圖片

1.3.3 編寫ks.cfg文件 (Cobbler Kickstart Templates啟動模板)

具體內容見最後:

技術分享圖片

1.3.4 系統及網絡設置

  #創建系統systems

技術分享圖片

  #配置操作

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

1.3.5 檢查及同步

  #web 操作大致步驟1234(順序不需一樣)

技術分享圖片

#至此,部署完成。

1.4 自動化安裝系統

1.4.1 準備工作

  1. cobbler 服務端部署完成
  2. cobbler web界面設置完成
  3. VMware 添加空白虛擬機(內存至少兩個G)

1.4.2 同時裝機多臺

web界面添加多個“system”(利用mac地址識別)

技術分享圖片

1.4.3 ks文件啟動模板

1.4.3.1 CentOS-7-x86_64.cfg

#CentOS7的ks文件 CentOS-7-x86_64.cfg

# Cobbler for Kickstart Configurator for CentOS 7 by yao zhang

install

url --url=$tree

text

lang en_US.UTF-8

keyboard us

zerombr

bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"

#Network information

$SNIPPET(‘network_config‘)

#network --bootproto=dhcp --device=eth0 --onboot=yes --noipv6 --hostname=CentOS7

timezone --utc Asia/Shanghai

authconfig --enableshadow --passalgo=sha512

rootpw --iscrypted $default_password_crypted

clearpart --all --initlabel

part /boot --fstype xfs --size 1024

part swap --size 1024

part / --fstype xfs --size 1 --grow

firstboot --disable

selinux --disabled

firewall --disabled

logging --level=info

reboot

%pre

$SNIPPET(‘log_ks_pre‘)

$SNIPPET(‘kickstart_start‘)

$SNIPPET(‘pre_install_network_config‘)

# Enable installation monitoring

$SNIPPET(‘pre_anamon‘)

%end

%packages

@^minimal

@compat-libraries

@core

@debugging

@development

bash-completion

chrony

dos2unix

kexec-tools

lrzsz

nmap

sysstat

telnet

tree

vim

wget

%end

%post

systemctl disable postfix.service

%end

1.4.3.2 CentOS-6.8-x86_64.cfg

# Cobbler for Kickstart Configurator for CentOS 6.8 by yao zhang

install

url --url=$tree

text

lang en_US.UTF-8

keyboard us

zerombr

bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"

$SNIPPET(‘network_config‘)

timezone --utc Asia/Shanghai

authconfig --enableshadow --passalgo=sha512

rootpw --iscrypted $default_password_crypted

clearpart --all --initlabel

part /boot --fstype=ext4 --asprimary --size=200

part swap --size=1024

part / --fstype=ext4 --grow --asprimary --size=200

firstboot --disable

selinux --disabled

firewall --disabled

logging --level=info

reboot

%pre

$SNIPPET(‘log_ks_pre‘)

$SNIPPET(‘kickstart_start‘)

$SNIPPET(‘pre_install_network_config‘)

# Enable installation monitoring

$SNIPPET(‘pre_anamon‘)

%end

%packages

@base

@compat-libraries

@debugging

@development

tree

nmap

sysstat

lrzsz

dos2unix

telnet

%end

%post --nochroot

$SNIPPET(‘log_ks_post_nochroot‘)

%end

%post

$SNIPPET(‘log_ks_post‘)

# Start yum configuration

$yum_config_stanza

# End yum configuration

$SNIPPET(‘post_install_kernel_options‘)

$SNIPPET(‘post_install_network_config‘)

$SNIPPET(‘func_register_if_enabled‘)

$SNIPPET(‘download_config_files‘)

$SNIPPET(‘koan_environment‘)

$SNIPPET(‘redhat_register‘)

$SNIPPET(‘cobbler_register‘)

# Enable post-install boot notification

$SNIPPET(‘post_anamon‘)

# Start final steps

$SNIPPET(‘kickstart_done‘)

# End final steps

%end

推薦相關博客:http://blog.oldboyedu.com/autoinstall-cobbler/

COBBLER無人值守安裝