为什么在openstack地平线上设置浮动ip时,操作顺序很重要?
我想使用openstack来设置ubuntu/bionic的实例。在使用ansible/openstack API自动生成vm实例之前,我通过openstack horizon web界面执行了一些测试。基本上,我执行以下步骤:为什么在openstack地平线上设置浮动ip时,操作顺序很重要?,openstack,openstack-horizon,Openstack,Openstack Horizon,我想使用openstack来设置ubuntu/bionic的实例。在使用ansible/openstack API自动生成vm实例之前,我通过openstack horizon web界面执行了一些测试。基本上,我执行以下步骤: 创建网络:我的网络 shared: False subnet: address: 192.168.66.0/24 IP version: IPv4 gateway: 192.168.66.254 allocation pool: 192
shared: False
subnet:
address: 192.168.66.0/24
IP version: IPv4
gateway: 192.168.66.254
allocation pool: 192.168.66.100,192.168.66.200
dns: my-dns-ips
external provider: provider
interface:
subnet: my-network
ip: 192.168.66.254
network: my-network
security group: default + ssh + icmp
keypair: generated via ssh-keygen and imported to horizon
ip: 192.168.13.209
port to be associated: my-instance:192.168.66.123
network: my-network
security group: default + ssh + icmp
keypair: generated via ssh-keygen and imported to horizon
ip: 192.168.13.209
port to be associated: my-instance:192.168.66.123
权限被拒绝(公钥)
错误进行ssh
理想情况下,顺序为1。2.3.4.对于我未来的ansible需求来说,这是最好的,因为它们允许在网络设置和实例分配之间进行清晰(干净)的分离
你能告诉我为什么这个命令会触发ssh错误,而另一个命令工作正常吗
这是正常行为吗?如果是,你能解释一下原因吗
[编辑]进一步查看成功和失败实例的日志,我注意到失败实例找不到ssh密钥。这显然解释了ssh失败的原因,但我仍然不明白为什么在这种情况下,密钥对没有注入实例。这是因为在第一次尝试时,实例可以从
DHCP代理获取元数据。但是在第二个顺序中,网络在路由器上有一个gw
,在图中,metadata agent
起作用。我不能通过这么多信息来说明问题,但我建议检查中子和nova配置文件中的元数据\u代理\u共享\u秘密。如果您不是这样,您是否可以发布neutron services的配置文件并解释哪个服务安装在哪里?这是因为在您第一次尝试时,该实例可以从DHCP代理获取元数据。但是在第二个顺序中,网络在路由器上有一个gw
,在图中,metadata agent
起作用。我不能通过这么多信息来说明问题,但我建议检查中子和nova配置文件中的元数据\u代理\u共享\u秘密。如果您的情况并非如此,您能否发布中子服务的配置文件,并解释哪个服务安装在哪里?谢谢您的解释。这真的很有道理。通过将os\u server::config\u drive
选项设置为True
,我最终可以在没有明确理解的情况下实现。不客气,我建议您在中子元数据和l3代理中查找问题。当您的解决方案工作时,它将不允许您在cloud init中添加用户数据。元数据代理是在实例中注入元数据的最佳方式。感谢您的解释。这真的很有道理。通过将os\u server::config\u drive
选项设置为True
,我最终可以在没有明确理解的情况下实现。不客气,我建议您在中子元数据和l3代理中查找问题。当您的解决方案工作时,它将不允许您在cloud init中添加用户数据。元数据代理是在实例中注入元数据的最佳方式。