1.6.2. 准备置备主机
在创建裸机凭证和集群时,您必须有一个置备主机。置备主机是可用于安装的 bootstrap 主机虚拟机。它可以是虚拟机,也可以是运行基于内核的虚拟机 (KVM) 的服务。创建凭证和集群时,您需要此主机的详细信息。完成以下步骤以配置置备(provisioner)主机:
-
使用
SSH
登录 provisioner 节点。 运行以下命令,创建非 root 用户 (user-name) 并为该用户提供 sudo 权限:
useradd <user-name> passwd <password> echo "<user-name> ALL=(root) NOPASSWD:ALL" | tee -a /etc/sudoers.d/<user-name> chmod 0440 /etc/sudoers.d/<user-name>
useradd <user-name> passwd <password> echo "<user-name> ALL=(root) NOPASSWD:ALL" | tee -a /etc/sudoers.d/<user-name> chmod 0440 /etc/sudoers.d/<user-name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令为新用户创建 SSH 密钥:
su - <user-name> -c "ssh-keygen -t rsa -f /home/<user-name>/.ssh/id_rsa -N ''"
su - <user-name> -c "ssh-keygen -t rsa -f /home/<user-name>/.ssh/id_rsa -N ''"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用新创建的用户登陆到 provisioner 节点。
su - <user-name> [user-name@provisioner ~]$
su - <user-name> [user-name@provisioner ~]$
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令使用 Red Hat Subscription Manager 来注册 provisioner 节点:
sudo subscription-manager register --username=<user-name> --password=<password> --auto-attach sudo subscription-manager repos --enable=rhel-8-for-x86_64-appstream-rpms --enable=rhel-8-for-x86_64-baseos-rpms
sudo subscription-manager register --username=<user-name> --password=<password> --auto-attach sudo subscription-manager repos --enable=rhel-8-for-x86_64-appstream-rpms --enable=rhel-8-for-x86_64-baseos-rpms
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如需有关 Red Hat Subscription Manager 的更多信息,请参阅 Red Hat OpenShift Container Platform 文档中的使用和配置 Red Hat Subscription Manager。
运行以下命令来安装所需的软件包:
sudo dnf install -y libvirt qemu-kvm mkisofs python3-devel jq ipmitool
sudo dnf install -y libvirt qemu-kvm mkisofs python3-devel jq ipmitool
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 修改用户以便为新创建的用户中添加
libvirt
组。sudo usermod --append --groups libvirt <user-name>
sudo usermod --append --groups libvirt <user-name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令重启
firewalld
并启用http
服务:sudo systemctl start firewalld sudo firewall-cmd --zone=public --add-service=http --permanent sudo firewall-cmd --add-port=5000/tcp --zone=libvirt --permanent sudo firewall-cmd --add-port=5000/tcp --zone=public --permanent sudo firewall-cmd --reload
sudo systemctl start firewalld sudo firewall-cmd --zone=public --add-service=http --permanent sudo firewall-cmd --add-port=5000/tcp --zone=libvirt --permanent sudo firewall-cmd --add-port=5000/tcp --zone=public --permanent sudo firewall-cmd --reload
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令启动并启用
libvirtd
服务:sudo systemctl start libvirtd sudo systemctl enable libvirtd --now
sudo systemctl start libvirtd sudo systemctl enable libvirtd --now
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令创建默认存储池并启动它:
sudo virsh pool-define-as --name default --type dir --target /var/lib/libvirt/images sudo virsh pool-start default sudo virsh pool-autostart default
sudo virsh pool-define-as --name default --type dir --target /var/lib/libvirt/images sudo virsh pool-start default sudo virsh pool-autostart default
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 查看以下示例来配置网络:
置备网络(IPv4 地址)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 完成此步骤后,SSH 连接可能会断开。
IPv4 地址可以是任何无法使用 baremetal 网络路由的地址。
置备网络(IPv6 地址)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 完成此步骤后,SSH 连接可能会断开。
IPv6 地址可以是任何无法使用 baremetal 网络路由的地址。
在使用 IPv6 地址时,请确保启用了 UEFI,并将 UEFI PXE 设置设置为 IPv6 协议。
使用
ssh
重新连接到 provisioner 节点(如果需要)。ssh <user-name>@provisioner.<cluster-name>.<domain>
# ssh <user-name>@provisioner.<cluster-name>.<domain>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令验证连接网桥是否已正确创建:
nmcli con show
nmcli con show
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 您返回的结果类似以下内容:
Expand NAME
UUID
TYPE
DEVICE
baremetal
4d5133a5-8351-4bb9-bfd4-3af264801530
bridge
baremetal
provisioning
43942805-017f-4d7d-a2c2-7cb3324482ed
bridge
provisioning
virbr0
d9bca40f-eee1-410b-8879-a2d4bb0465e7
bridge
virbr0
bridge-slave-eno1
76a8ed50-c7e5-4999-b4f6-6d9014dd0812
Ethernet
eno1
bridge-slave-eno2
f31c3353-54b7-48de-893a-02d2b34c4736
Ethernet
eno2
通过以下步骤创建
pull-secret.txt
文件:vim pull-secret.txt
vim pull-secret.txt
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 在 Web 浏览器中,导航到 Install OpenShift on Bare Metal with user-provisioned infrastructure,再向下滚动到 Downloads 部分。
- 点 Copy pull secret。
-
将内容粘贴到
pull-secret.txt
文件中,并将内容保存到user-name
用户的主目录中。
您已准备好创建裸机凭证。