21.3. 配置服务器控制台

overcloud 节点的控制台输出并不总是发送到服务器控制台。如果要在服务器控制台中查看此输出,您必须将 overcloud 配置为使用适合您的硬件控制台。使用以下方法之一执行此配置:

  • 修改每个 overcloud 角色的 KernelArgs heat 参数。
  • 自定义 director 用来置备 overcloud 节点的 overcloud-full.qcow2 镜像。

前提条件

在部署过程中 使用 heat 修改内核参数

  1. stack 用户身份登录 undercloud 主机。
  2. 查找 stackrc 凭证文件:

    $ source stackrc
  3. 使用以下内容创建环境文件 overcloud-console.yaml

    parameter_defaults:
      <role>Parameters:
        KernelArgs: "console=<console-name>"

    将 & lt;role > 替换为您要配置的 overcloud 角色的名称,并将 < console-name > 替换为您要使用的控制台 ID。例如,使用以下代码片段将默认角色中的所有 overcloud 节点配置为使用 tty0

    parameter_defaults:
      ControllerParameters:
        KernelArgs: "console=tty0"
      ComputeParameters:
        KernelArgs: "console=tty0"
      BlockStorageParameters:
        KernelArgs: "console=tty0"
      ObjectStorageParameters:
        KernelArgs: "console=tty0"
      CephStorageParameters:
        KernelArgs: "console=tty0"
  4. 使用 -e 选项,在部署命令中包含 overcloud-console-tty0.yaml 文件。

修改 overcloud-full.qcow2 镜像

  1. stack 用户身份登录 undercloud 主机。
  2. 查找 stackrc 凭证文件:

    $ source stackrc
  3. 修改 overcloud-full.qcow2 镜像中的内核参数,为您的硬件设置正确的控制台。例如,将控制台设置为 tty0

    $ virt-customize --selinux-relabel -a overcloud-full.qcow2 --run-command 'grubby --update-kernel=ALL --args="console=tty0"'
  4. 将镜像导入 director:

    $ openstack overcloud image upload --image-path /home/stack/images/overcloud-full.qcow2
  5. 部署 overcloud。

验证

  1. 从 undercloud 登录 overcloud 节点:

    $ ssh heat-admin@<IP-address>

    <IP-address > 替换为 overcloud 节点的 IP 地址。

  2. 检查 /proc/cmdline 文件的内容,并确保 console= 参数设置为您要使用的控制台值:

    [heat-admin@controller-0 ~]$ cat /proc/cmdline
    BOOT_IMAGE=(hd0,msdos2)/boot/vmlinuz-4.18.0-193.29.1.el8_2.x86_64 root=UUID=0ec3dea5-f293-4729-b676-5d38a611ce81 ro console=tty0 console=ttyS0,115200n81 no_timer_check crashkernel=auto rhgb quiet