每次服务器重启时 EC2 私有 IP 都会更改
EC2 Private IP changes on every server restart
我们有一个 RHEL 7.2 EC2 实例,我们正在尝试安装 Oracle 12C EE 服务器。我们已经为实例分配了一个弹性 IP,以确保 Public IP 地址在我们重新启动服务器时不会改变。但是我们看到实例的主机名在服务器重新启动时发生了变化。
问题:oracle安装中有几个步骤需要提到EC2实例的主机名(即私有DNS),所以我们在oracle中硬编码了主机名安装。但问题是,如果主机名在每次服务器重新启动时发生更改,那么安装的软件将无法运行(因为它保留了以前的主机名)- 如何解决此问题?
请告诉我们解决此问题的最佳做法。
EC2 中的 IP 地址不会随着简单的重启而改变。它们只会在完全停止时改变,然后再开始。如果您使用的是 VPC,您很可能是,那么即使使用 stop/start.
,私有 IP 地址也不会改变
如果您想要一个即使将安装移动到不同的 EC2 实例也能正常工作的解决方案,那么您应该创建一个 Route53 私有托管区域,将其附加到您的 VPC,然后为此创建一个自定义 DNS 名称服务器。
如果您使用的是 VPC(现在是默认设置),则私有 IP 不应在重启或停止启动时更改。
我的理解是,您在 os 重新启动时将 hostname 重置为默认 ip-x-y-z-k 导致 oracle 数据库出现问题。
这通常是由 cloud-init(嵌入在 AMI 中)引起的。
我建议您完成以下步骤:
首先在 os 中设置 hostname:
$: hostnamectl set-hostname Your-New-Host-Name-Here --static
编辑您的“/etc/hosts”以匹配私有 IP:
<private_ip> <hostname>
检查“/etc/sysconfig/network”中 HOSTNAME 的值,它应该与您的 hostname 匹配。
最后,为了解决这个问题,我建议从'/etc/cloud/cloud.cfg'
中删除以下行
- set_hostname
- update_hostname
- update_etc_host
要测试它是否有效,请停止并启动实例,私有 IP 应与之前相同,hostname 应为您定义的名称。
希望对您有所帮助。
G.
我们有一个 RHEL 7.2 EC2 实例,我们正在尝试安装 Oracle 12C EE 服务器。我们已经为实例分配了一个弹性 IP,以确保 Public IP 地址在我们重新启动服务器时不会改变。但是我们看到实例的主机名在服务器重新启动时发生了变化。
问题:oracle安装中有几个步骤需要提到EC2实例的主机名(即私有DNS),所以我们在oracle中硬编码了主机名安装。但问题是,如果主机名在每次服务器重新启动时发生更改,那么安装的软件将无法运行(因为它保留了以前的主机名)- 如何解决此问题?
请告诉我们解决此问题的最佳做法。
EC2 中的 IP 地址不会随着简单的重启而改变。它们只会在完全停止时改变,然后再开始。如果您使用的是 VPC,您很可能是,那么即使使用 stop/start.
,私有 IP 地址也不会改变如果您想要一个即使将安装移动到不同的 EC2 实例也能正常工作的解决方案,那么您应该创建一个 Route53 私有托管区域,将其附加到您的 VPC,然后为此创建一个自定义 DNS 名称服务器。
如果您使用的是 VPC(现在是默认设置),则私有 IP 不应在重启或停止启动时更改。
我的理解是,您在 os 重新启动时将 hostname 重置为默认 ip-x-y-z-k 导致 oracle 数据库出现问题。 这通常是由 cloud-init(嵌入在 AMI 中)引起的。
我建议您完成以下步骤:
首先在 os 中设置 hostname:
$: hostnamectl set-hostname Your-New-Host-Name-Here --static
编辑您的“/etc/hosts”以匹配私有 IP:
<private_ip> <hostname>
检查“/etc/sysconfig/network”中 HOSTNAME 的值,它应该与您的 hostname 匹配。
最后,为了解决这个问题,我建议从'/etc/cloud/cloud.cfg'
中删除以下行- set_hostname
- update_hostname
- update_etc_host
要测试它是否有效,请停止并启动实例,私有 IP 应与之前相同,hostname 应为您定义的名称。
希望对您有所帮助。
G.