

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 配置 SLES 12/15 for SAP
<a name="configure-operating-system-sles-for-sap-12.x"></a>

**重要**  
在以下步骤中，您需要更新几个配置文件。我们建议您在修改文件之前先备份文件。如果需要，这将帮助您恢复到以前的配置。

1. 实例启动并运行后，使用安全外壳 (SSH) 和用于启动实例的密钥对连接到实例。
**注意**  
根据您的网络和安全设置，在访问 SAP HANA 实例之前，您可能必须先使用 SSH 连接到堡垒主机，或者您可能需要向安全组添加 IP 地址或端口以允许 SSH 访问。

1. 切换到根用户。

   或者，您可以使用 `sudo` 以 ec2-user 的身份执行以下命令。

1. 通过执行 `hostnamectl` 命令和更新 `/etc/hostname` 文件，为您的实例设置主机名和完全限定域名 (FQDN)。

   ```
      hostnamectl set-hostname --static <your_hostname>
      echo <your_hostname.example.com> > /etc/hostname
   ```

   打开一个新会话以验证主机名更改。

1. 确保 `DHCLIENT_SET_HOSTNAME` 参数设置为 **no**，以防止 DHCP 在重新启动期间更改主机名。

   ```
      grep DHCLIENT_SET_HOSTNAME /etc/sysconfig/network/dhcp
   ```

1. 将 `preserve_hostname` 参数设置为 true 以确保在重新启动期间保留主机名。

   ```
      sed -i '/preserve_hostname/ c\preserve_hostname: true' /etc/cloud/cloud.cfg
   ```

1. 在 `/etc/hosts` 文件中添加一个包含新主机名和 IP 地址的条目。

   ```
     <ip_address> <hostname.example.com> <hostname>
   ```

1. 如果您使用的是 BYOS SLES for SAP 映像，请向 SUSE 注册您的实例。确保您的订阅是针对 SLES for SAP。

   ```
      SUSEConnect -r <Your_Registration_Code>
      SUSEConnect -s
   ```

1. 确保安装了以下软件包：

    `systemd`, `tuned`, `saptune`, `libgcc_s1`, `libstdc++6`, `cpupower`, `autofs`, `nvme-cli`, `libssh2-1`, `libopenssl1_0_0` 

   您可以使用 `rpm` 命令检查是否已安装软件包。

   ```
      rpm -qi <package_name>
   ```

   然后，您可以使用 zypper install 命令来安装丢失的软件包。

   ```
      zypper install <package_name>
   ```
**注意**  
如果您要导入自己的 SLES 映像，则可能需要额外的软件包来确保您的实例以最佳方式设置。有关最新信息，请参阅适用于 SAP HANA 的 SLES for SAP 应用程序配置指南中的“软件包列表”部分，该指南附于 SAP OSS Note [1944799](https://me.sap.com/notes/1944799) 

1. 根据您的版本，确保您的实例运行于 SAP OSS Note [2205917](https://me.sap.com/notes/2205917) 或 [2684254](https://me.sap.com/notes/2684254) 中建议的内核版本上。如果需要，请更新系统以满足最低内核版本要求。您可以使用以下命令检查内核和其他软件包的版本：

   ```
      rpm -qi kernel*
   ```

1. 启动 `saptune daemon` 并使用以下命令将其设置为在系统重新启动时自动启动。

   ```
      saptune daemon start
   ```

1. 检查是否在 `saptune` 配置文件中设置了 `force_latency` 参数。

   ```
      grep force_latency /usr/lib/tuned/saptune/tuned.conf
   ```

   如果设置了参数，请跳过下一步，然后继续使用 `saptune` 激活 HANA 配置文件。

1. 根据 SAP OSS Note [2205917](https://me.sap.com/notes/2205917) 更新 `saptune HANA` 配置文件，然后运行以下命令为 SAP HANA 创建自定义配置文件。如果已设置 `force_latency` 参数，则不需要执行此步骤。

   ```
      mkdir /etc/tuned/saptune
      cp /usr/lib/tuned/saptune/tuned.conf /etc/tuned/saptune/tuned.conf
      sed -i "/\[cpu\]/ a force_latency=70" /etc/tuned/saptune/tuned.conf
      sed -i "s/script.sh/\/usr\/lib\/tuned\/saptune\/script.sh/"
   ```

1. 将 `tuned` 配置文件切换到 HANA，并验证所有设置均已正确配置。

   ```
      saptune solution apply HANA
      saptune solution verify HANA
   ```

1. 配置并启动网络时间协议 (NTP) 服务。您可以根据您的要求调整 NTP 服务器池；例如：
**注意**  
从 `/etc/ntp.conf` 中删除任何现有的无效 NTP 服务器池，然后添加以下内容。

   ```
      echo "server 0.pool.ntp.org" >> /etc/ntp.conf
      echo "server 1.pool.ntp.org" >> /etc/ntp.conf
      echo "server 2.pool.ntp.org" >> /etc/ntp.conf
      echo "server 3.pool.ntp.org" >> /etc/ntp.conf
      systemctl enable ntpd.service
      systemctl start ntpd.service
   ```
**提示**  
如果需要，您可以连接到内部 NTP 服务器，而不是连接到全局 NTP 服务器池。或者，您可以使用 [Amazon Time Sync Service](https://docs.amazonaws.cn/AWSEC2/latest/UserGuide/set-time.html) 使系统时间保持同步。

1. `tsc`通过更新`current_clocksource`文件和 GRUB2 启动加载程序将时钟源设置为。

   ```
      echo "tsc" > /sys/devices/system/clocksource/*/current_clocksource
      cp /etc/default/grub /etc/default/grub.backup
      sed -i '/GRUB_CMDLINE_LINUX/ s|"| clocksource=tsc"|2' /etc/default/grub
      grub2-mkconfig -o /boot/grub2/grub.cfg
   ```

1. 重新启动系统以使更改生效。

1. 继续执行 [SAP HANA 的存储配置](configure-storage-for-sap-hana.md)。