更新 Amazon WorkSpaces 的 DNS 服务器 - Amazon WorkSpaces
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

更新 Amazon WorkSpaces 的 DNS 服务器

如果您需要在启动 WorkSpaces 后更新 Active Directory 的 DNS 服务器 IP 地址,还必须使用新的 DNS 服务器设置更新 WorkSpaces。

您可以通过以下方式更新 WorkSpaces 设置:

  • 更新 WorkSpaces 上的 DNS 设置以前您更新了活动目录的 DNS 设置。

  • 重建 WorkSpaces之后您更新了活动目录的 DNS 设置。

我们建议在更新 Active Directory 中的 DNS 设置之前更新 WorkSpaces 上的 DNS 设置(如中所述)步骤 1以下过程中的)。

如果你想重建 WorkSpaces,请更新活动目录中的一个 DNS 服务器 IP 地址 (步骤 2),然后按照中的过程操作重建WorkSpace重建 WorkSpaces。重建 WorkSpaces 后,请按照中的步骤操作步骤 3来测试 DNS 服务器更新。完成该步骤后,请在 Active Directory 中更新第二台 DNS 服务器的 IP 地址,然后再次重建 WorkSpaces。务必按照中的过程操作。步骤 3来测试你的第二个 DNS 服务器更新。正如中所指出的最佳实践部分中,我们建议每次更新一个 DNS 服务器 IP 地址。

最佳实践

当您更新 DNS 服务器设置时,我们建议使用以下最佳实践:

  • 为避免域资源断开连接和无法访问,我们强烈建议在非高峰时段或计划维护期间执行 DNS 服务器更新。

  • 不要在更改 DNS 服务器设置之前的 15 分钟内和 15 分钟内启动任何新的 WorkSpaces。

  • 更新 DNS 服务器设置时,一次更改一个 DNS 服务器 IP 地址。在更新第二个 IP 地址之前,请验证第一次更新是否正确。我们建议执行以下过程(步骤 1步骤 2, 和步骤 3) 两次以便一次更新一个 IP 地址。

第 1 步:更新 WorkSpaces 上的 DNS 服务器设置

在以下过程中,当前和新的 DNS 服务器 IP 地址值如下所示:

  • 当前 DNS IP 地址:OldIP1OldIP2

  • 新 DNS IP 地址:NewIP1NewIP2

注意

如果这是你第二次执行此过程,请替换OldIP1OldIP2NewIP1NewIP2.

如果您有多个 WorkSpaces,则可以通过在 WorkSpaces 的 Active Directory OU 上应用组策略对象 (GPO) 来将以下注册表更新部署到 WorkSpaces。有关使用 GPO 的更多信息,请参阅管理 Windows WorkSpaces.

你可以使用注册表编辑器或使用 Windows PowerShell 进行这些更新。此部分中介绍了这两个过程。

使用注册表编辑器更新 DNS 注册表设置

  1. 在 Windows WorkSpace 中,打开 Windows 搜索框,然后输入registry editor打开注册表编辑器(regedit.exe)。

  2. 当询问“你要允许此应用对你的设备进行更改吗?”时,选择

  3. 在注册表编辑器中,导航到以下注册表项:

    KEY_LOCAL_MACHINE\ Amazon\ SkyLight

  4. 打开DOMAINJINDNS注册表项。更新OldIP1NewIP1,然后选择确定.

  5. 关闭注册表编辑器。

  6. 重新启动工作区,或者重新启动服务 SkylightWorkSpace ConfigService。

    注意

    重新启动服务 SkylightWorkSpaceConfigService 后,网络适配器最多可能需要 1 分钟才能反映更改。

  7. 继续执行步骤 2,然后在 Active Directory 中更新 DNS 服务器设置以替换OldIP1NewIP1.

使用 PowerShell 更新 DNS 注册表设置

以下过程使用 PowerShell 命令更新注册表并重新启动服务 SkylightWorkSpaceConfigService。

  1. 在 Windows WorkSpace 中,打开 Windows 搜索框,然后输入powershell. 选择以管理员身份运行

  2. 当询问“你要允许此应用对你的设备进行更改吗?”时,选择

  3. 在 PowerShell 窗口中,运行以下命令以检索当前 DNS 服务器 IP 地址。

    Get-ItemProperty -Path HKLM:\SOFTWARE\Amazon\SkyLight -Name DomainJoinDNS

    您应该会收到以下输出。

    DomainJoinDns : OldIP1,OldIP2
    PSPath        : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Amazon\SkyLight
    PSParentPath  : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Amazon
    PSChildName   : SkyLight
    PSDrive       : HKLM
    PSProvider    : Microsoft.PowerShell.Core\Registry
  4. 在 PowerShell 窗口中,运行以下命令以更改:OldIP1NewIP1. 一定要离开OldIP2和现在一样。

    Set-ItemProperty -Path HKLM:\SOFTWARE\Amazon\SkyLight -Name DomainJoinDNS -Value "NewIP1,OldIP2"
  5. 运行以下命令以重新启服务 SkylightWorkSpace ConfigSpace 服务。

    restart-service -Name SkyLightWorkspaceConfigService
    注意

    重新启动服务 SkylightWorkSpaceConfigService 后,网络适配器最多可能需要 1 分钟才能反映更改。

  6. 继续执行步骤 2,然后在 Active Directory 中更新 DNS 服务器设置以替换OldIP1NewIP1.

如果您有多个 Linux WorkSpace,我们建议您使用配置管理解决方案进行分发和实施策略。例如,您可以使用Amazon OpsWorks for Chef AutomateAmazon OpsWorks for Puppet Enterprise,或者Ansible.

在 Linux WorkSpace 中更新 DNS 服务器设置

  1. 在 Linux WorWorkSpace 上,打开终端窗口 (应用程序 >系统工具 >MATE 终端)。

  2. 使用以下 Linux 命令编辑/etc/dhcp/dhclient.conf文件。您必须具有 root 用户权限才能编辑此文件。要么通过使用sudo -i命令,或者使用执行所有命令sudo如图所示。

    sudo vi /etc/dhcp/dhclient.conf

    /etc/dhcp/dhclient.conf文件,您将看到以下内容:prepend命令,哪里OldIP1OldIP2DNS 服务器的 IP 地址。

    prepend domain-name-servers OldIP1, OldIP2; # skylight
  3. ReplaceOldIP1NewIP1,离开,OldIP2和现在一样。

  4. 将您的更改保存为/etc/dhcp/dhclient.conf.

  5. 重新启 WorkSpace。

  6. 继续执行步骤 2,然后在 Active Directory 中更新 DNS 服务器设置以替换OldIP1NewIP1.

第 2 步:更新活动目录的 DNS 服务器设置

在此步骤中,您将更新 Active Directory 的 DNS 服务器设置。正如中所指出的最佳实践部分中,我们建议每次更新一个 DNS 服务器 IP 地址。

要更新 Active Directory 的 DNS 服务器设置,请参阅Amazon Directory Service管理指南

更新 DNS 服务器设置后,请继续执行步骤 3.

第 3 步:测试更新后的 DNS 服务器设置

完成后步骤 1步骤 2,请使用以下过程验证更新后的 DNS 服务器设置是否按预期工作。

在以下过程中,当前和新的 DNS 服务器 IP 地址值如下所示:

  • 当前 DNS IP 地址:OldIP1OldIP2

  • 新 DNS IP 地址:NewIP1NewIP2

注意

如果这是你第二次执行此过程,请替换OldIP1OldIP2NewIP1NewIP2.

  1. 关闭OldIP1DNS 服务器。

  2. 登录 Windows WorkSpace。

  3. 在 Windows 开始菜单上,选择 Windows 系统,然后选择命令提示符

  4. 运行以下命令,其中AD_Name是你的活动目录的名称(例如,corp.example.com)。

    nslookup AD_Name

    这些区域有:nslookup命令应返回以下输出。(如果这是你第二次执行此过程,你应该看到NewIP2代替OldIP2。)

    Server:  Full_AD_Name
    Address:  NewIP1
    
    Name:    AD_Name
    Addresses:  OldIP2
              NewIP1
  5. 如果输出不是你所期望的,或者你收到任何错误,请重复步骤 1.

  6. 等一个小时,然后确认没有报告任何用户问题。确认 。NewIP1正在获取 DNS 查询并回复答案。

  7. 验证第一台 DNS 服务器工作正常后,重复步骤 1更新第二台 DNS 服务器,这次更换OldIP2NewIP2. 然后重复步骤 2 和步骤 3。

  1. 关闭OldIP1DNS 服务器。

  2. 登录 Linux WorkSpace。

  3. 在 Linux WorWorkSpace 上,打开终端窗口 (应用程序 >系统工具 >MATE 终端)。

  4. DHCP 响应中返回的 DNS 服务器 IP 地址写入本地/etc/resolv.confWorkSpace 中的文件。运行以下命令以查看/etc/resolv.conf 文件。

    cat /etc/resolv.conf

    您应当看到如下输出。(如果这是你第二次执行此过程,你应该看到NewIP2代替OldIP2。)

    ; This file is generated by Amazon WorkSpaces
    ; Modifying it can make your WorkSpace inaccessible until reboot
    options timeout:2 attempts:5
    ; generated by /usr/sbin/dhclient-script
    search region.compute.internal
    nameserver NewIP1
    nameserver OldIP2
    nameserver WorkSpaceIP
    注意

    如果你手动修改/etc/resolv.conf文件,则在重新启动 WorkSpace 时,这些更改将丢失。

  5. 如果输出不是你所期望的,或者你收到任何错误,请重复步骤 1.

  6. 实际的 DNS 服务器 IP 地址存储在/etc/dhcp/dhclient.conf文件。要查看此文件的内容,请运行以下命令。

    sudo cat /etc/dhcp/dhclient.conf

    您应当看到如下输出。(如果这是你第二次执行此过程,你应该看到NewIP2代替OldIP2。)

    # This file is generated by Amazon WorkSpaces
    # Modifying it can make your WorkSpace inaccessible until rebuild
    prepend domain-name-servers NewIP1, OldIP2; # skylight
  7. 等一个小时,然后确认没有报告任何用户问题。确认 。NewIP1正在获取 DNS 查询并回复答案。

  8. 验证第一台 DNS 服务器工作正常后,重复步骤 1更新第二台 DNS 服务器,这次更换OldIP2NewIP2. 然后重复步骤 2 和步骤 3。