Chinaunix首页 | 论坛 | 博客
  • 博客访问: 60954
  • 博文数量: 9
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 96
  • 用 户 组: 普通用户
  • 注册时间: 2014-05-26 12:24
文章分类

全部博文(9)

文章存档

2016年(6)

2015年(1)

2014年(2)

我的朋友

分类: 系统运维

2016-01-18 23:31:11


问题来了:假设机房有100台服务器需要安装系统, 如何快速完成

linux系统直接使用cobbler配置自动化系统安装环境即可

  • 安装
关闭selinux
yum -y install epel-release
yum -y install cobbler tftp-server dhcp httpd xinetd cman yum-utils

for i in cobblerd httpd xinetd dhcpd
do
chkconfig $i on
done

/etc/init.d/httpd restart
/etc/init.d/xinetd restart
/etc/init.d/cobblerd restart
#xinetd 启动是因为会使用到tftp

  • 重要路径 和 配置文件
注意:
/var/www/cobbler 目录必须具有足够容纳 Linux 安装文件的空间, 可以用软链接)

目录名称
作    用
/var/www/cobbler
导入的系统发行版,repos镜像和kickstart文件都放置在/var/www/cobbler目录下。确保/var目录有足够的空间来存储这些文件

/var/www/cobbler/images/

存储所有导入发行版的Kernel和initrd镜像用于远程网络启动

/var/www/cobbler/ks_mirror/

存储导入的发行版系统数据

/var/www/cobbler/repo_mirror/

仓库存储目录

/var/log/cobbler

Cobbler日志文件 cobbler.log install.log

/cblr/
默认是对应于/var/www/cobbler下

  • 配置文件
cobbler --help         # 如果有异常, 连help也执行不了, 会报错. 报错一般为"Connection refused" 或 "Connection timed out", 这种先检查/etc/cobbler/settings 中 server 和 next_server 设置是否正确, 修改配置文件正确后重启cobbler再试
cobbler get-loaders        #作用是:  从cobbler.github.com官网下载一些文件到/var/lib/cobbler/loaders
cobbler check 
按提示解决相关问题,常用的设置有:
/etc/cobbler/settings
(1)server 和 next_server 设为本服务器的 IP 地址
(2)manage_dhcp 设为 1,以便管理 DHCP
(3)pxe_just_once 设为1, 以防止循环安装, 非常重要!!
/etc/xinetd.d/rsync
将文件中的disable字段的配置由yes改为no
iptables
在iptables中将69,80,25151端口打开。如果仅仅只是在内部环境中使用,建议直接将防火墙关掉
/etc/xinetd.d/tftp
将文件中的disable字段的配置由yes改为no
修改默认密码(可选)
openssl passwd -1 -salt '干扰码,随意写' '系统安装后的root密码'

openssl passwd -1 -salt 'baidu.com' 'pwd123' #密码是pwd123
/etc/init.d/cobblerd restart
cobbler check

  • 配置dhcp
vi  /etc/cobbler/dhcp.template
subnet 192.168.56.0 netmask 255.255.255.0 {        #注意这里的掩码shou55测试最好是255.255这类似的,不能使用255.248这种,原因不清楚. 2015-12-17 shou55猜测前面的subnet和后面的掩码2者要匹配.
     option routers             192.168.56.1;
     option domain-name-servers 114.114.114.114;
     option subnet-mask         255.255.255.0;            #这里可以使用248这种掩码
     range dynamic-bootp        192.168.56.151 192.168.56.154;
     default-lease-time         21600;
     max-lease-time             43200;
     next-server                $next_server;
     class "pxeclients" {
          match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
          if option pxe-system-type = 00:02 {
                  filename "ia64/elilo.efi";
          } else if option pxe-system-type = 00:06 {
                  filename "grub/grub-x86.efi";
          } else if option pxe-system-type = 00:07 {
                  filename "grub/grub-x86_64.efi";
          } else {
                  filename "pxelinux.0";
          }
     }


}


cobbler sync     #执行以后, 因为前面开启了manage_dhcp, 所以dhcp自己的配置文件/etc/dhcp/dhcpd.conf配置文件会被cobbler的/etc/cobbler/dhcp.template覆盖.   且在/var/lib/tftpboot目录下也会生成相应的文件
cobbler  check
/etc/init.d/dhcpd restart     # 如果启动失败, 则使用dhcpd -t检查配置

  • 导入iso
mount -o loop Fedora-9-x86_64-DVD.iso /mnt/dvd/        #将ISO文件挂载到 /mnt/dvd 目录
cobbler import --path=/mnt/dvd --name=FC9-x86-64    # 从 /mnt/dvd 目录导入所有安装文件,注意--path后使用绝对路径,否则可能不成功,命名为 FC9-x86-64 ,名字可以自己随便取
cobbler distro list              #查看导入结果
cobbler sync                      #生成并同步所有配置,非常重要


注意:
有一些系统是无法成功导入的,shou55实际遇到的已知的有:
一些精简版本的系统(可能可以导入成功, 但在使用pxe安装时会报错)
LIVE-CD这种可能也不行(可能在导入中报错no signature matched in /var/www/cobbler/ks_mirror/

)
目前shou55唯一成功的只有centos官方下载的iso源文件包.

至此, 启动一台服务器并进入pxe就可以看到类似于

这样的选择界面. 然后选择相应的名字即可进行安装. 

但是这样安装出来的系统其分区是cobbler默认的配置, 主机名是默认的, ip地址也是随意的, 这样安装出来的服务器还不能满足生产环境的需要,  能否对分区和主机名进行定制, 对ip地址也进行定制了?  下一节继续







阅读(1774) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~