阿哥论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 298|回复: 0

使用Kickstart安装脚本全自动快速部署CentOS 6.0

[复制链接]

2018

主题

1

好友

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

优秀会员 助人为乐 辛勤工作 技术精英 多才多艺 优秀班竹 灌水天才 星球管理 宣传大使 灌水之王 财富勋章 版主勋章 动漫勋章 勤奋会员 论坛精英 PS高手 心 8 闪游皮肤 双鱼座 8★8➹ 志愿者 乖

发表于 2015-5-20 11:49:42 |显示全部楼层
使用Kickstart安装脚本全自动快速部署Centos 6.0
全自动化部署安装操作系统的应用场合十分广泛。相较于传统的手动安装,省时、省力;同时也能避免出现人为的误操作;在大型系统(如政府部分、企业集团)当中,保证所有服务器的配置、安全设置、文件系统、服务程序的一致性更显得尤为重要。基于此,Red Hat系统下的Kickstart安装脚本应运而生。通过这样一个脚本,linux管理员可以创建统一的自定义系统配置、软件等等。本文中笔者将为各位介绍如何使用Kickstart安装CentOS 6.0。
在CentOS的安装过程中Kickstart使用脚本文件与其进行交互。这个文件可以放在本地磁盘也可放在网络上。由于使用了标准的Anaconda安装程序;安装脚本与手动操作的权限没什么两样,可以操作磁盘分区、设置网络、密码和用户名等等。
当然,每台服务器的配置不可能是完全一模一样的(那样直接Ghost就可以了^_^)。诸如“主机名”、“IP地址”之类的参数。Kickstart的自定义脚本会在需要的时候弹出对话框来提示你这些参数该如何设置。
创建一个Centos Kickstart安装脚本
在CentOS安装完成后,会在root用户的家目录中自动生成一个 /root/anaconda-ks.cfg 配置文件。这个就是Kickstart的安装脚本了。如果需要克隆当前的服务器,完全可以拷贝出来在另一台机子上重复使用。
也可以直接调用Kickstart配置程序来生成安装脚本。进入CentOS系统,“应用程序”->“系统工具”下找到Kickstart。按需调用相应的程序,具体如下:
  • Basic Configuration (基本设置)可以指定root密码、默认语言、键盘设置以及时区等。还可以选择安装系统时的界面(text mode)。以加快安装进程的速度。
  • Installation Method (安装方式)选择是安装全新操作系统还是升级。不推荐使用Kickstart升级操作系统,因为在升级的过程中会出现很多的交互选项,会比较麻烦。还可以指定安装源(如:CD-ROM、NFS、FTP、HTTP或本地磁盘)
  • Boot Loader Options (启动选项)修改启动选项的设置,一般使用默认的就可以了。
  • Partition Information (分区设置)如果你的服务器上有SAN存储器,需要谨慎操作此选项。在默认情况下,Kickstart脚本会尝试清除SAN存储器中的内容,并将新操作系统安装在上面。
  • Network Configuration (网络设置)Kickstart默认不会修改网络接口。因为IP地址每台机子都是唯一的。具体需要怎么做,笔者稍候会作出解答^_^。
  • Authentication (认证)Kickstart默认使用shadow文件进行密码认证。对于大型系统的部署,可能会用到专用的认证系统。Kickstart支持NIS,LDAP,Kerberos,SMB 和Name Switch Cache。
  • Firewall Configuration (防火墙设置)可以设置防火墙和SELinux。如果你不喜欢SELinux直接禁用就可以了。如果是最小化安装,建议禁用防火墙稍候再设置。
  • Display Configuration (显示设置)如果是服务器的话,直接text mode就可以了。
  • Package Selection (安装包选择)指定CentOS预安装的软件包。
  • Pre-installation Script (预执行脚本) 和 Post-installation Script (延迟执行脚本)定义bash、Perl或Python脚本以供安装脚本使用。
下面是一个Kickstart安装脚本的示例:
  1. #Kickstart全自动快速部署最小化安装脚本示例
  2. #Author Freemouse
  3. #Home  http://www.cnPHP.info
  4. #Source http://www.cnphp.info/quick-install-centos-6-0-with-kickstart.html

  5. #禁用防火墙
  6. firewall --disabled

  7. #安装操作系统
  8. install

  9. #使用光驱为安装源
  10. cdrom
  11. repo --name="centos" --baseurl=file:///mnt/source --cost=100

  12. # Root密码 – 'testpass', 加密
  13. rootpw --iscrypted $1$pcafN9bo$lueZDdCQMz8fc/brhDa1J1

  14. #网络设置
  15. network  --bootproto=static --device=eth0 --gateway=192.168.1.1 --ip=192.168.1.100 --nameserver=1.1.1.2 --netmask=255.255.255.0 --onboot=on

  16. # 系统认证文件
  17. auth  --useshadow  --passalgo=sha512 --enablefingerprint

  18. #text mode 安装
  19. text

  20. # 键盘
  21. keyboard us

  22. # 语言
  23. lang zh_CN

  24. # 禁用SELinux
  25. selinux --disabled

  26. # 禁用X windows
  27. skipx

  28. # 日志
  29. logging --level=info

  30. # 时区
  31. timezone  Aisa/Shang_Hai

  32. # 启动选项
  33. bootloader --append="crashkernel=auto rhgb quiet" --location=mbr --driveorder="sda"

  34. # 清除MBR
  35. zerombr

  36. # 清除分区表
  37. clearpart --all

  38. %post
  39. #在这里添加自定义脚本,以修改IP地址等
  40. %end

  41. %packages
  42. @base
  43. @core

  44. @server-policy

  45. %end
复制代码
加载Kickstart安装脚本
在启动设备中添加ks参数就可以加载Kickstart安装脚本了。也可以在操作系统安装启动画面中按Tab键修改这个参数。修改完毕直接加载就可以了。下面是一些例子:
  • ks=http://example.org/ks.cfg –从网址中加载Kickstat安装脚本。相对其它方式更简单方便;缺点是无法修改,并且服务器需要联网。
  • ks=cdrom:/ks.cfg – 从光驱中加载Kickstart脚本。需要安装系统的时候,直接刻盘安装即可。
  • 从BOOTP/DHCP 启动并从NFS系统中加载安装脚本更快,也更适合大批量部署服务器。
进阶使用
Kickstart的预安装和延迟安装脚本是比较有特色的。例如,之前讲到的IP地址无法自动安装的问题。因为,每台机子IP都是唯一的。这个时候预安装脚本就可以闪亮登场了。编译一段bash或perl代码,在安装系统时交互输入IP地址:
  1. #!/bin/sh

  2. #切换到3#终端
  3. exec < /dev/tty3 > /dev/tty3

  4. #获取输入
  5. echo "请输入IP地址:"
  6. read ip

  7. #查找置顶ip地址
  8. sed -i "s/1\.1\.1\.111/$ip/" /etc/sysconfig/network-scripts/ifcfg-eth0

  9. #重新切换回1#终端,完成安装
  10. exec < /dev/tty1 > /dev/tty1
复制代码
IT论坛全自动部署安装操作系统的方式
Kickstart的安装流程和传统的手动安装基本没太大区别。在安装过程中设置服务器基本运行环境。这也造成整个安装过程过于相对较慢。
单从速度来说,可以使用dd命令来直接拷贝系统镜像。对于家庭用户或小范围拷贝效率会更高^_^。
?
1
dd if=/dev/sda of=/media/backup_device/sda_image.img



使用Kickstart安装脚本全自动快速部署CentOS 6.0
http://www.cnphp.info/quick-inst ... with-kickstart.html
该会员没有填写今日想说内容.
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

回顶部