文档首页/ 裸金属服务器 BMS/ 常见问题/ 操作系统类/ 如何设置裸金属服务器的静态主机名?
更新时间:2023-07-10 GMT+08:00

如何设置裸金属服务器的静态主机名?

问题描述

Linux裸金属服务器的静态主机名来源于创建裸金属服务器时,通过控制台注入的用户自定义名称。可以使用控制台或hostname命令更改裸金属服务器的主机名,但如果重启裸金属服务器,将自动还原为控制台上注入的用户自定义名称。

自动更新方案(推荐)

在控制台修改裸金属服务器的主机名,并在操作系统内部打开自动同步主机名的开关,重启裸金属服务器后,能够将控制台上修改的主机名同步至裸金属服务器操作系统。

自动更新主机名时,有如下约束:

  • 通过控制台修改主机名时不支持中文。
  • 主机名最大长度为63个字节。
  • 不支持特殊字符(中划线、下划线和点除外)。
  • 不支持大写字母。
  • Windows裸金属服务器不支持通过该方法同步主机名。
  1. 登录管理控制台,选择“计算 > 裸金属服务器”,进入裸金属服务器页面。
  2. 单击待修改主机名的裸金属服务器名称,进入详情页面。
  3. 单击名称后的,输入满足以上约束的主机名称,确认修改后单击右侧的,保存主机名设置。
  4. 登录该裸金属服务器操作系统,通过以下命令,打开自动同步主机名功能开关。

    sed -i 's/auto_synchronize_hostname.*/auto_synchronize_hostname = True/g' `find / -name bms-network-config.conf

    通过以下命令,检查是否已更新。

    cat `find / -name bms-network-config.conf

  5. 再次进入管理控制台,在该裸金属服务器所在行,单击操作列的“更多 > 重启”。

    等待10分钟左右,保证裸金属服务器重启完成并自动更新主机名。

    如果4中的参数项“auto_synchronize_hostname”设置为“False”,裸金属服务器主机名会保持创建时用户自定义的主机名。

手动更新方案

使用hostname命令修改Linux裸金属服务器的主机名后,如果您希望修改后的主机名在裸金属服务器关机、重启后仍然生效,需要将其写入相应的配置文件中,使之永久生效。

假设使用hostname命令修改后的主机名为new_hostname

  1. 修改配置文件“/etc/hostname”。
    1. 执行以下命令,编辑配置文件“/etc/hostname”。

      sudo vim /etc/hostname

    2. 将配置文件中的主机名替换为修改后的主机名new_hostname
    3. 执行以下命令,保存并退出文件。

      :wq

  2. (可选)对于RHEL/CentOS/Fedora 6操作系统,需要修改配置文件“/etc/sysconfig/network”。
    1. 执行以下命令,编辑配置文件“/etc/sysconfig/network”。

      sudo vim /etc/sysconfig/network

    2. 修改涉及“HOSTNAME”的参数值,将其设置为修改后的主机名new_hostname

      HOSTNAME=new_hostname

    3. 执行以下命令,保存并退出文件。

      :wq

  3. 修改配置文件“/etc/cloud/cloud.cfg”。
    1. 执行以下命令,编辑配置文件“/etc/cloud/cloud.cfg”。

      sudo vim /etc/cloud/cloud.cfg

    2. 按需选择如下两种方法,修改配置文件。
      • 方法一:修改或添加“preserve_hostname”参数项。

        如果文件“/etc/cloud/cloud.cfg”中已有参数项“preserve_hostname: false”,将其修改为“preserve_hostname: true”即可。

        如果文件“/etc/cloud/cloud.cfg”中没有该参数项,需要在“cloud_init_modules”模块前,添加语句preserve_hostname: true

      • 方法二:删除或者注释如下语句。

        update_hostname

    3. 执行以下命令,保存并退出文件。

      :wq

  4. 修改裸金属服务器网络配置脚本“bms-network-config.conf”。

    “bms-network-config.conf”的配置参数“enable_preserve_hostname”默认为False,表示每次单板复位自动刷新主机名。将其修改为True即可关闭该功能。

    1. 执行以下命令,编辑配置脚本“bms-network-config.conf”,将参数项“enable_preserve_hostname”设置为True。

      sed -i 's/enable_preserve_hostname.*/enable_preserve_hostname = True/g' `find / -name bms-network-config.conf

  5. (可选)对于SUSE系列操作系统,还需要修改配置文件“/etc/sysconfig/network/dhcp”。
    1. 执行以下命令,编辑配置文件“/etc/sysconfig/network/dhcp”。

      sudo vim /etc/sysconfig/network/dhcp

    2. 将参数项“DHCLIENT_SET_HOSTNAME”设置为no,保证每次dhcp服务不会自动分配主机名。

      DHCLIENT_SET_HOSTNAME="no"

    3. 执行以下命令,保存并退出文件。

      :wq

  6. 执行以下命令,重启裸金属服务器。

    sudo reboot

  7. 执行以下命令,验证静态主机名的修改是否永久生效。

    sudo hostname

    如果回显的内容是修改后的主机名new_hostname,表示主机名修改成功,永久生效。