Cobbler 自动安装linux

cobble 官网

http://cobbler.github.io/

快速入门

http://cobbler.github.io/manuals/quickstart/

Web 访问

http://cobbler.github.io/manuals/2.8.0/5_-_Web_Interface.html

a889d65623f74b7599bc6ebbc09cdf95

更新EPEL使用淘宝源

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

2084af84343947968f04c8f84d9d7c3e

安装Cobbler

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

rpm -ql cobbler

c8db1a6f93e7401bb2ca4c11d3b80082

/etc/cobbler # 配置文件目录

/etc/cobbler/settings # cobbler主配置文件,这个文件是YAML格式,Cobbler是python写的程序。

/etc/cobbler/dhcp.template # DHCP服务的配置模板

/etc/cobbler/tftpd.template # tftp服务的配置模板

/etc/cobbler/rsync.template # rsync服务的配置模板

/etc/cobbler/iso # iso模板配置文件目录

/etc/cobbler/pxe # pxe模板文件目录

/etc/cobbler/power # 电源的配置文件目录

/etc/cobbler/users.conf # Web服务授权配置文件

/etc/cobbler/users.digest # 用于web访问的用户名密码配置文件

/etc/cobbler/dnsmasq.template # DNS服务的配置模板

/etc/cobbler/modules.conf # Cobbler模块配置文件

/var/lib/cobbler # Cobbler数据目录

/var/lib/cobbler/config # 配置文件

/var/lib/cobbler/kickstarts # 默认存放kickstart文件

/var/lib/cobbler/loaders # 存放的各种引导程序

/var/www/cobbler # 系统安装镜像目录

/var/www/cobbler/ks_mirror # 导入的系统镜像列表

/var/www/cobbler/images # 导入的系统镜像启动文件

/var/www/cobbler/repo_mirror # yum源存储目录

/var/log/cobbler # 日志目录

/var/log/cobbler/install.log # 客户端系统安装日志

/var/log/cobbler/cobbler.log # cobbler日志

systemctl start httpd cobblerd

systemctl status httpd cobblerd

systemctl enable httpd cobblerd

8fd43ac3cafd4b888e718a4e4e4e8514

部署校验

这货有一个自我检查的命令,可以知道在部署前还需要解决哪些问题

cobbler check

58cba2cda92c4f189145d3882173fa85

还有9个问题要处理,容我处理下

设置服务器IP

The 'server' field in /etc/cobbler/settings must be set to something other than localhost, or kickstarting features will not work. This should be a resolvable hostname or IP for the boot server as reachable by all machines that will use it.

vi /etc/cobbler/settings

cat /etc/cobbler/settings | grep -v ^# | grep -v ^$

改3个地方

bind_master: 192.168.10.10

next_server: 192.168.10.10

server: 192.168.10.10

d4a9548ce0944df5bbf7787269929ee6

禁用SELinux

SELinux is enabled. Please review the following wiki page for details on ensuring cobbler works correctly in your SELinux environment:

https://github.com/cobbler/cobbler/wiki/Selinux

systemctl stop firewalld

systemctl disable firewalld

sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

grep SELINUX=disabled /etc/selinux/config

setenforce 0

开启TFTP

change 'disable' to 'no' in /etc/xinetd.d/tftp

vi /etc/xinetd.d/tftp

c7d9d44d5c364bbb91db9fbbec9943f0

开启rsync

enable and start rsyncd.service with systemctl

systemctl start rsyncd

systemctl enable rsyncd

7b6cfa8e8454403b8fb7fd64743c25f4

安装fencing

fencing tools were not found, and are required to use the (optional) power management features. install cman or fence-agents to use them

rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

yum install -y fence-agents

ca47c3b7ba2547f08b87e7007e7249da

systemctl restart cobblerd

cobbler check

剩下4个问题

47ace90ca9544389b86b44fa9bad9efc

下载启动程序

Some network boot-loaders are missing from /var/lib/cobbler/loaders, you may run 'cobbler get-loaders' to download them, or, if you only want to handle x86/x86_64 netbooting, you may ensure that you have installed a *recent* version of the syslinux package installed and can ignore this message entirely. Files in this directory, should you want to support all architectures, should include pxelinux.0, menu.c32, elilo.efi, and yaboot. The 'cobbler get-loaders' command is the easiest way to resolve these requirements.

cobbler get-loaders

f921fb2d49c8422eb454b2c57d42a305

安装大便镜像package

debmirror package is not installed, it will be required to manage debian deployments and repositories

yum install -y debmirror.noarch

88ac121d7c334d038ff2df620741ae31

The default password used by the sample templates for newly installed machines (default_password_crypted in /etc/cobbler/settings) is still set to 'cobbler' and should be changed, try: "openssl passwd -1 -salt 'random-phrase-here' 'your-password-here'" to generate new one

openssl passwd -1 -salt 'random-phrase-here' '12345.com'

$1$random-p$N2Gta7Jon4dskSI6zKe5C1

vi /etc/cobbler/settings

把default_password_crypted 替换成新密码

de85d1071b7246fea3e2da92a333c39f

cobbler sync

cobbler check

2d915ffe0e4541799cfd7a5953257b70

还剩下2个问题

vi /etc/debmirror.conf

2行注释拿掉

7ff77079ca7e411ead96de0b8a92e227

应用配置文件

systemctl restart cobblerd

cobbler sync

cobbler check

602c34b58e9a43098e11eabb1ff531ec

all system go

开启dhcp和pxe

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

cat /etc/cobbler/settings | grep manage_dhcp

a86dfe3864f744f19298b00791fd0c5c

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

cat /etc/cobbler/settings |grep pxe_just

e4b1be6b8c934b38889addc091bcf664

设置dhcp ip 地址池

cp /etc/cobbler/dhcp.template /etc/cobbler/dhcp.template.original

vi /etc/cobbler/dhcp.template

b07f8887567548cd8ff76e6454b2decc

b645338cad43409ba7e0383f19a4fdeb

systemctl restart dhcpd

systemctl enable dhcpd

挂载镜像

d8f1d8b84c65425ea54a7bd81b61e40a

mount -t iso9660 -o ro /dev/cdrom /mnt

883cbeca59ef412f8f82340a87ff85c7

导入镜像

cobbler import --path=/mnt/ --name=CentOS-7.5-x86_64 --arch=x86_64

d3bf3bb250f74be0ab3ef259ee0323b1

cobbler distro list

3fe2ccde77d540ea9424c67219fb9480

ls /var/www/cobbler/ks_mirror/

9afe223a038b4e079bd588d8489c83df

查看镜像文件信息

cobbler list

cobbler distro report --name=CentOS-7.5-x86_64

a0a4bd17f982471cba18791ab361beb8

修改网卡配置,因为cenos 7之后网卡从eth0变成ens打头的了

cobbler profile report

751547474bf540f19d1b0667504e32cf

cobbler profile edit --name=CentOS-7.5-x86_64 --kopts='net.ifnames=0 biosdevname=0'

cobbler profile report --name=CentOS-7.5-x86_64

239669cc9d7d4e3aac2d43d23100f7bc

同步下数据

cobbler sync

4a648d09d6c14c6b837388d88318a761

自定义pxe菜单

vi /etc/cobbler/pxe/pxedefault.template

17a42b62242d4e3abf07aaf84c4ece57

63843691143f45d18788a2ea3a48eaf4

ed123700e9cd4994894144f06491a404

a22f2bd6c9a24755a59511d7556a86b7

387dc380a6f44296bb7a2b8b67921f5e

眼睛一闭就好了

a0e23ae2479749c9975cbe3f1e42cf83

直接指定IP和MAC 绑定某一个安装菜单

cobbler system add --name=CentOS --mac=00:0C:29:D6:4F:57 --profile=CentOS-7.5-x86_64 --ip-address=192.168.10.100 --subnet=255.255.255.0 --gateway=192.168.10.2 --interface=eth0 --static=1 --hostname=linux_node --name-servers="8.8.8.8"

同步数据

cobbler system list

cobbler sync

问题 找不到boot,磁盘空间不足

dc13e4223d8a4f7fbe8bbc7da413f755

容我修个错误

https://access.redhat.com/solutions/3353961

Root Cause

  • The memory defined for the system is not sufficient hence it is unable to process/download the live image.
  • Minimum of 2GB of memory should be allocated.

虚拟机给2G内存搞定

问题 禁止PXE

cobbler profile edit --name=CentOS-7.5-x86_64 --enable-gpxe=False

cobbler profile report --name=CentOS-7.5-x86_64

3d2d6bb2b6754508aaae734ee4bf02f8

cat /etc/cobbler/modules.conf | grep -v ^$ | grep -v ^#

4d83c382f4324606b829d7afbb78609d

e0feedae0a824e859f97dafbb29badfd

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值