1 前言
1.1 环境节点分布
控制节点(1个),网络节点(1个),计算节点(一个),物理服务器(作为ironic节点)(1台)
1.2 网络配置
Controller1节点 ens32(99.0.31.111/16)ens33(100.0.31.111/16)
Network节点 ens32(99.0.31.112/16)ens33(不配ip)
Compute1节点 ens32(99.0.31.113/16)ens33(不配ip)
Ironic节点(裸金属)ILO(99.0.50.15/8)PXE端口MAC地址(1c:98:ec:30:5e:e4)
注意:由于服务器PXE启动时只会从第一个端口启动,
所以选择PXE端口MAC地址时一定要用端口1的MAC地址。
网络环境配置解释:
1. ens32和ilo口是相通的;
2. 以后裸金属节点会通过PXE网络访问ironic API的ip(99.0.31.111),所以ironic API所在的控制节点必须增加ens33和裸金属的PXE端口处于同一网络。
2 控制节点安装配置Ironic
2.1 安装依赖包
2.1.1 安装配置PXE
创建/tftpboot文件夹
mkdir -p /tftpboot
安装tftp-serversyslinux-tftpboot xinetd
yum install tftp-server syslinux-tftpbootxinetd
编辑/etc/xinetd.d/tftp文件
vim /etc/xinetd.d/tftp
service tftp
{
protocol = udp
port = 69
socket_type = dgram
wait = yes
user = root
server =/usr/sbin/in.tftpd
server_args = -v -v -v -v -v--map-file /tftpboot/map-file /tftpboot
disable = no
#This is a workaround for Fedora, where TFTP will listen only on
#IPv6 endpoint, if IPv4 flag is not used.
flags = IPv4
}
重启xinetd服务
systemctl restart xinetd
复制pxelinux.0到/tftpboot文件夹
cp /var/lib/tftpboot/pxelinux.0 /tftpboot
创建一个map文件
echo 're ^(/tftpboot/) /tftpboot/\2' >/tftpboot/map-file
echo 're ^/tftpboot/ /tftpboot/' >>/tftpboot/map-file
echo 're ^(^/) /tftpboot/\1' >>/tftpboot/map-file
echo 're ^([^/]) /tftpboot/\1' >>/tftpboot/map-file
修改/tftoboot文件夹属主为ironic
chown -R ironic /tftpboot
2.1.2 安装iscsi-initiator-utils psmisc
因为后面的步骤会用到iscsiadm,fuser命令
所以我们要安装相关软件。
yum install iscsi-initiator-utils
yum install psmisc
2.2 创建ironic数据库
# mysql -u root -