当主节点发生故障时,其IP(IPv6)将浮动到备用节点.备用节点应该在该IP上提供服务.
鉴于这两个节点共存于同一LAN中,通常可以看出备用节点变得无法访问.接口为UP和RUNNING,并分配了IPv6地址,但所有IP操作都已停止.
一种可能性是当IP配置为待机时,重复地址检测(DAD)正在开始.RFC表示必须停止所有IP操作.
我的问题是关于Linux内核IPv6实现的细节.以前,从内核代码来看,我认为必须设置sysctl变量"disable_ipv6".但是内核没有禁用IPv6,它只是停止该接口上的所有IP操作.
任何人都可以解释Linux内核IPv6在DAD失败时"禁用这些IP操作"时的作用吗?如果不进行DOWN&UP接口,可以重置为正常吗?代码中的任何指针都将非常有用.
network-programming ipv6 linux-kernel openstack openstack-nova
运行 OpenStack Newton,全新安装,在尝试启动实例时在计算节点上(在 nova-compute.log 中)收到此消息:
2017-04-04 19:28:47.546 31726 ERROR nova.compute.manager [req-af37e2ee-0ef9-4d4e-b3ce-d7a1bf27a780 - - - - -] [instance: 6ecaf72c-88bc-4f26-8907-dc19d7924327] An error occurred while refreshing the network cache.
2017-04-04 19:28:47.546 31726 ERROR nova.compute.manager [instance: 6ecaf72c-88bc-4f26-8907-dc19d7924327] Traceback (most recent call last):
2017-04-04 19:28:47.546 31726 ERROR nova.compute.manager [instance: 6ecaf72c-88bc-4f26-8907-dc19d7924327] File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 5766, in _heal_instance_info_cache
2017-04-04 19:28:47.546 31726 ERROR nova.compute.manager [instance: 6ecaf72c-88bc-4f26-8907-dc19d7924327] self.network_api.get_instance_nw_info(context, instance)
2017-04-04 19:28:47.546 31726 ERROR nova.compute.manager [instance: 6ecaf72c-88bc-4f26-8907-dc19d7924327] File "/usr/lib/python2.7/dist-packages/nova/network/api.py", line 369, in get_instance_nw_info
2017-04-04 19:28:47.546 31726 ERROR nova.compute.manager [instance: 6ecaf72c-88bc-4f26-8907-dc19d7924327] …
Run Code Online (Sandbox Code Playgroud) 我正在尝试从 github 获取 nova 代码,但出现以下错误:
#git clone https://github.com/openstack/nova.git
Initialized empty Git repository in /home/avikki/Desktop/nt/nova/.git/
error: Failed connect to github.com:443; Operation now in progress while accessing https://github.com/openstack/nova.git/info/refs
fatal: HTTP request failed
Run Code Online (Sandbox Code Playgroud)
你能建议怎么做吗?
我在本地机器上安装了OpenStack.我能够执行每个功能,如上传图像,创建和启动实例,关联浮动IP等.但我不能创建超过2 GB的卷.如果我创建任何超过2 GB的卷,那么它会在我的仪表板上显示状态"错误".创建的内容少于2 GB.
我已经使用devstack安装了 openstack 。我能够创建实例,也可以通过 ssh 登录实例,但虚拟机无法访问互联网。我还为实例提供了免费的 IP 地址范围。我只能 ping 通安装了 VM 的计算机。ping 请求甚至未到达网关。
谢谢
I'm getting the following error on my Openstack (DevStack) every time I try to launch an image other than cirrOS. Walking through internet leads me to:
Openstack cannot allocate RAM, CPU resources.
It's not true because I have a lot of RAM, disk space and CPU available.set in nova.conf -> scheduler_default_filters=AllHostsFilter
Tried without success.This hapends to any image in any format that is other than cirrOS.
Update: Now it is clear that there is no direct answer to …
使用该rax
模块启动服务器并获取清单时,如何告诉Ansible连接到隔离网络上的IP地址,而不是服务器的公共IP?
注意:正在从同一隔离网络中的服务器运行Ansible。
我在rax
模块上使用Ansible在Rackspace Cloud中启动服务器,然后将其添加到隔离/专用网络中。然后,将其添加到清单并开始配置。我要做的第一件事是锁定SSH,部分是通过告诉SSH仅绑定到隔离网络上提供给主机的IP地址。问题是,这意味着ansible无法通过公共IP地址进行连接,因此我也将其设置ansible_ssh_host
为私有IP。(将主机添加到清单时会发生这种情况。)
- name: Add servers to group
local_action:
module: add_host
hostname: "{{ item.name }}"
ansible_ssh_host: "{{ item.rax.addresses.my_network_name[0].addr }}"
groups: launched
with_items: rax_response.success
when: rax_response.action = 'create'
Run Code Online (Sandbox Code Playgroud)
在第一次创建和配置新实例时,此方法就很好。不幸的是,下次我尝试连接到这些服务器时,连接被拒绝,因为Ansible正在尝试使用SSH无法监听的IP地址。发生这种情况是因为:
ansible_ssh_host
...rax.py
清单脚本已设置ansible_ssh_host
为accessIPv4
Rackspace返回的...accessIPv4
为服务器的公共IP地址。现在,我不确定该怎么办。Rackspace确实允许API调用来更新服务器并设置服务器accessIPv4
,所以我认为我可以local_action
在创建服务器后再运行一个服务器。不幸的是,rax模块似乎不允许更新服务器,即使这样做,它也依赖于pyrax,而后者又取决于novaclient,而novaclient仅允许更新服务器的名称,而不是accessIPv4
。
肯定有人这样做过。通过rax
模块获取动态清单时,告诉Ansible在隔离网络上进行连接的正确方法是什么?
我在 centos 7 上运行 openstack。所有 openstack 服务都在 docker 容器中运行。当我在 openstack 上启动更多实例时,我不断看到 qemu-kvm 的 CPU 使用率很高。下面是显示我的 top 命令输出的图像
大约 20 秒,它会显示 qemu-kvm CPU 使用率峰值达到大约 80% 到 200%,然后它会回落到大约 5% 或 10%,持续几分钟,然后又恢复...它不断地上下跳动。
不确定 openstack 计算节点的预期 CPU 使用率是多少,但我想知道这是否值得担心,我应该采取哪些步骤来调查这个问题以及如何提高性能?
我是openstack热文件的新手.我做了搜索,但没有找到我的问题的相关答案.这里我的模板加热yaml文件:
heat_template_version: newton
description: Simple template to deploy a single compute instance with an attached volume
resources:
my_instance:
type: OS::Nova::Server
properties:
name: instance-name
flavor: std.cpu1ram1
block_device_mapping_v2:
- device_name: vda
image: RHEL-7.4
volume_size: 30
delete_on_termination: true
networks:
- network: network-name.admin-network
security_group:
- security_group: [security-name.group-sec-default]
my_volume:
type: OS::Cinder::Volume
properties:
size: 10
my_attachment:
type: OS::Cinder::VolumeAttachment
properties:
instance_uuid: { get_resource: my_instance }
volume_id: { get_resource: my_volume }
mountpoint: /dev/vdb
Run Code Online (Sandbox Code Playgroud)
这个加热文件有效,但我不知道如何将浮动IP附加到"my_instance".我能够在Horizon内部完成它并且它在没有PB的情况下工作.在Horizon界面下,我选择"Router_dmz"作为创建并允许浮动IP的池.据我所知,浮动IP地址应与"network-name.admin-network"相关联.我读了很多文档,我不知道是否要使用操作系统:Neutron :: FloatingIPAssociation资源或OS :: Nova :: FloatingIPAssociation.我试过了,我没有问题.
Openstack 版本 - Pike
在 Openstack 中,没有提供更改任何活动实例的密钥对的规定。Queens 和 Rocky 在重建命令中提供了选项,但这将再次重新创建实例。1. 有没有办法可以更改实例的密钥对而无需重新创建实例?2.为什么没有规定,在活动实例中更改keyair是否存在安全威胁?
如果有人回答上述问题,请帮忙。
openstack-nova ×10
openstack ×7
ansible ×1
centos7 ×1
cloud ×1
github ×1
ipv6 ×1
linux-kernel ×1
novaclient ×1
pyrax ×1
python ×1
qemu ×1
rabbitmq ×1
top-command ×1