ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Chrony和Cobbler实践

2021-01-10 07:51:11  阅读:281  来源: 互联网

标签:chrony etc -- settings 实践 192.168 Chrony cobbler Cobbler


1、配置chrony服务,实现服务器时间自动同步

# 第一部分:配置chrony服务器

# 安装chront软件包
yum install -y chrony 

# 编辑配置文件
cat > /etc/chrony.conf << EOF
server 1.centos.pool.ntp.org
server ntp.aliyun.com
server cn.pool.ntp.org
stratumweight 0
driftfile /var/lib/chrony/drift
rtcsync
makestep 1.0 3
allow 192.168.0.0/24
logdir /var/log/chrony
EOF

# 立即启动chrony服务并且设置为开机启动
systemctl start --now chronyd

# 校准时间
chronyc tracking

# 第二部分:配置chrony客户端

yum install -y chrony 

# 192.168.0.12是刚才配置好的chrony
cat > /etc/chrony.conf << EOF
server 192.168.0.12
stratumweight 0
driftfile /var/lib/chrony/drift
rtcsync
logdir /var/log/chrony
EOF

systemctl start --now chronyd

chronyc tracking

2、实现cobbler+pxe自动化装机

# 实验条件
# 1、使用最小化安装方式进行安装而且没有进行配置的CentOS7系统
# 2、虚拟化软件为VMWare Workstation Pro 16
# 3、关闭VMWare软件NAT网络自带的DHCP服务
# 4、虚拟机开机前提前挂载好CentOS7系统的ISO镜像文件
# 5、本次实验选择大小超过4DB的ISO镜像文件,直接额外安装一些常用软件
# 6、所有命令均以root身份执行
# 7、用于测试自动化安装系统的虚拟机使用的内存不能低于2G

# 配置静态IP、DNS等网络参数实现正常联网
nmcli con add con-name static \
ifname ens33 autoconnect yes type ethernet \
ip4 192.168.0.13/24 gw4 192.168.0.2

nmcli con up static
echo 'nameserver 192.168.0.2' > /etc/resolv.conf
ip route add 192.168.0.0/24 via 192.168.0.2 dev ens33

systemctl restart NetworkManager

# 安装相关软件
yum install -y epel-release 
yum install -y dhcp cobbler cobbler-web pykickstart xinetd
systemctl enable --now xinetd httpd dhcpd cobblerd tftp 

# 修改Cobbler的配置文件
# 此处的192.168.0.13是刚才配置的本机IP
# “cobbler get-loaders”命令能否正常下载文件取决于实际的网络状况
# 如果不能正常下载相关文件,需要配置proxy_url,也就是代理服务器的ip地址和端口
# proxy_url是提供代理服务的主机地址,是为了让“cobbler get-loaders”命令正常下载文件

sed -i 's/^server: 127.0.0.1/server: 192.168.0.13/' /etc/cobbler/settings
sed -i 's/^next_server: 127.0.0.1/next_server: 192.168.0.13/' /etc/cobbler/settings
sed -i 's@^proxy_url_ext:.*@proxy_url_ext: "http://192.168.0.1:12333"@' /etc/cobbler/settings
sed -i 's@manage_dhcp: 0@manage_dhcp: 1@' /etc/cobbler/settings 

# 下载必要的文件
cobbler get-loaders

# 设置xinetd服务接管tftp
cat > /etc/xinetd.d/tftp << EOF
service tftp
{
     socket_type             = dgram
     protocol                = udp
     wait                    = yes
     user                    = root
     server                  = /usr/sbin/in.tftpd
     server_args             = -s /var/lib/tftpboot
     disable                 = no
     per_source              = 11
     cps                     = 100 2
     flags                   = IPv4
}
EOF

systemctl enable rsyncd 
systemctl restart cobblerd

# 此时执行“cobbler check”命令应该至少会看见两处需要配置的项目
# 这两个项目与Cobbler实现自动化安装系统无关,可以忽略
cobbler check

# 配置Cobble接管DHCP服务和相关的参数

sed -i.bak '21,25d' /etc/cobbler/dhcp.template

sed -i '20a \
subnet 192.168.0.0 netmask 255.255.255.0 { \
     option routers             192.168.0.2; \
     option domain-name-servers 192.168.0.2; \
     option subnet-mask         255.255.255.0; \
     range dynamic-bootp        192.168.0.50 192.168.0.200; \
' /etc/cobbler/dhcp.template

systemctl restart cobblerd.service
cobbler sync > /dev/null && echo OK
systemctl status dhcpd 

# 导入ISO镜像文件
mount /dev/cdrom  /mnt
cobbler import --path=/mnt --name=Centos-7.8 --arch=x86_64
cobbler list 

# 编辑kickstart文件
cat > /var/lib/cobbler/kickstarts/Centos7.8-x86_64.cfg << EOF
auth --enableshadow --passalgo=sha512
# graphical
text

ignoredisk --only-use=sda
keyboard --vckeymap=us --xlayouts='us'
lang en_US.UTF-8 --addsupport=zh_CN.UTF-8

network  --bootproto=dhcp --device=ens33 --ipv6=auto --activate
url --url="\$tree"

rootpw --iscrypted \$6\$PZQDlNOAE8CoR6dc\$DRTjMEghl6nB8W1m0hEjxGKHnWAvT3LOVFdYe2eC8atpAiFRpnC0hvT4Jleb31hXU1IezHMoMSo4RugErz8Ya0

selinux --disabled
firewall --disabled
firstboot --disable
services --disabled="chronyd"

reboot

timezone Asia/Shanghai --isUtc --nontp
user --groups=wheel --name=admin --password=\$6\$c.zcA6c8hLkmAy54\$uRnJPM9J/40FfbuyMwLhpjU.DF9bWpeG6TYD8K6ijLQECbLyBuEq12nsgNzfpJ3ai4xAJfk9PYUDUuNB8MfNR. --iscrypted --gecos="admin"

bootloader --location=mbr --boot-drive=sda
zerombr
clearpart --all --initlabel

part swap --fstype="swap" --ondisk=sda --size=2048
part /boot --fstype="ext4" --ondisk=sda --size=488
part / --fstype="xfs" --ondisk=sda --size=17943

%packages
@^minimal
@core
@"Development Tools"
vim-enhanced
lrzsz
net-tools
bash-completion
lsof
wget

%end

%addon com_redhat_kdump --disable --reserve-mb='auto'

%end

%anaconda
pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
%end
EOF

# 导入ks文件

cobbler profile edit --name Centos-7.8-x86_64 --kickstart=/var/lib/cobbler/kickstarts/Centos7.8-x86_64.cfg
cobbler validateks
cobbler sync

在配置好Cobbler服务后,如果再进行变更配置参数比如修改kickstart文件,需要执行“cobbler sync”命令。
完成新建一个用于测试的虚拟机之后,必须手动将选项调整到“Centos-7.8-86_64”这一行。如下图所示:Chrony和Cobbler实践

标签:chrony,etc,--,settings,实践,192.168,Chrony,cobbler,Cobbler
来源: https://blog.51cto.com/14920534/2586478

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有