如何获取opnestack服务器实例的NAT ip地址,我正在使用knife openstack命令创建新实例并引导它。
原因是一些配置要求我添加NAT ip地址,使用ohai我只能获得内部ip,而不能获得openstack在运行时分配的公共ip/NAT ip/浮动ip。
任何帮助
以下是我为HP的OpenStack所做的工作(免责声明:HP员工),尽管它需要在ohai gem的候选版本中使用新的提示系统。如果您为openstack创建了一个提示(即触摸/etc/chef/ohai/hints/openstack.json
),那么它应该也能正常工作。
$ sudo gem install ohai --version 6.18.0.rc.1
$ sudo mkdir -p /etc/chef/ohai/hints
$ sudo touch /etc/chef/ohai/hints/hp.json
$ sudo ohai
[lots deleted]
"cloud": {
"public_ipv4": "15.185.XXX.XXX",
"private_ips": [
"10.4.XXX.XXX"
],
"public_ips": [
"15.185.XXX.XXX"
],
"local_ipv4": "10.4.XX.XXX",
"provider": "hp",
"local_hostname": "precise",
"public_hostname": "precise"
}
这是使用这个Chef Omnibus安装程序。如果你使用的是操作系统代码Ubuntu软件包,那么可能会有点困难。
您是否在环境中创建了公共网络?如果您已经完成了此操作,则需要创建一个路由器,然后将公共网络与内部网络相关联。之后,您可以将浮动ip与内部ip相关联。最后,实例通过NAT方法与Internet进行了联系。你可以查看这个博客。希望这能帮助你。