计算节点服务异常修复

计算节点服务异常修复

二○二壹年十二月七日

目录

第一章 概述 - 3 -

1.1. 问题现象 - 3 -

1.2. 原因分析 - 3 -

1.3. 修复内容 - 3 -

1.4. 影响范围 - 4 -

第二章 前期准备 - 4 -

2.1. 前期准备 - 4 -

2.2. 现场实施人员 - 4 -

2.3. 设备清单 - 5 -

第三章 实施步骤 - 5 -

3.1. 健康检查 - 5 -

3.2. 备份文件 - 5 -

3.3. 修复步骤 - 6 -

3.4. 修复完成检察 - 6 -

第四章 应急回退 - 6 -

概述

问题现象

南网云平台生产Ⅳ区NFDW4-TSTACK-COM-203重启后nova-compute服务无法启动,报Unsupported VIF type binding_failed convert '_nova_to_osvif_vif_binding_failed

原因分析

虚拟机数据库内容丢失(迁移失败后,又执行了疏散失败),重启nova-compute,初始化虚拟机添加网卡报错。

该网络节点没有支持VLAN网络

修复内容

  1. 底层修改对应虚拟机数据:

nova.instance_info_caches 表network_info字段

neutron.ml2_port_bindings 表vif_type、vif_type字段

neutron.ports表status字段

修改逻辑:标红为需要修改字段,参照同网络同用户虚拟机进行修改

  1. 计算节点添加VLAN网络

影响范围

配置VLAN网络需要重启节点neutron服务,可能引起节点上的虚拟机丢包。

前期准备

本章节主要对该工作方案进行详细说明、实施前的准备工作和实施过程中的注意事项,规范化操作过程,减少变更时出现的问题,增加操作效率,降低改造对业务带来的影响。

前期准备

  1. 项目实施负责人,确定实施时间,向受影响客户通告此次实施事宜;
  2. 在实施前,对涉及系统进行检查,做好备份工作;
  3. 合理安排实施人员,做好测试和处理问题准备。

现场实施人员

设备清单

南网云-生产-Ⅳ区:

序号

主机名

管理IP

用途

1

NFDW4-TSTACK-CON-01

10.10.xx.xx

控制节点

2

NFDW4-TSTACK-COM-203

10.10.xx.xx

计算节点

实施步骤

健康检查

所有控制节点依次检查openstack服务状态

. /root/keystonerc_admin

nova service-list

neutron agent-list

cinder service-list

openstack-service status

rabbitmqctl cluster_status

mysql -uroot -pxxxxx -e ”show status like '%wsrep%’;"

备份文件

备份控制节点openstack数据库

mysqldump -uroot -pXXXXXX >tstack_openstack.sql

查询当前数据并记录

use nova;

select * from instance_info_caches where instance_uuid = '2419a87b-c13e-4dc9-98ce-a2fdcf2a3498'\G;

use neutron;

select * from ml2_port_bindings where port_id = '81cba393-1a04-45bb-8330-94721ce7ce4f'\G;

select * from ports where id='81cba393-1a04-45bb-8330-94721ce7ce4f'\G;

修复步骤

  1. 控制节点底层数据库修改数据

附件为sql语句

修改后查看计算节点服务是否恢复正常

  1. 计算节点NFDW4-TSTACK-COM-203添加VLAN网络

在计算节点NFDW4-TSTACK-COM-203执以下命令,创建vlan网桥,并将数据网卡桥接到vlan网桥中

#创建网桥br-data

ovs-vsctl add-br br-data

#数据网卡以系统实际vlan租户网络对应的网卡名为主,注意是业务网卡口

ovs-vsctl add-port br-data bond2

 编辑/etc/neutron/plugin.ini,更新tenant_network_types,加入vlan

#tenant_network_types = vxlan,vlan

sed -i "/tenant_network_types/{s/tenant_network_types.*/tenant_network_types = vxlan,vlan/}" /etc/neutron/plugins/ml2/ml2_conf.ini

 [ml2_type_vlan]块中添加physnet2,作为vlan的物理网络

#network_vlan_ranges = physnet2:1:4094

sed -i "/ml2_type_vlan/a network_vlan_ranges = physnet2:1:4094" /etc/neutron/plugins/ml2/ml2_conf.ini

在 [ovs] 块中新加physnet2和物理网桥的映射

#bridge_mappings = physnet2:br-data

sed -i "/integration_bridge/a bridge_mappings = physnet2:br-data" /etc/neutron/plugins/ml2/ml2_conf.ini

重启neutron服务(重启耗时较长,等待即可)

openstack-service restart neutron

#如无openstack-service命令,可通过yum安装

yum -y install openstack-utils

重启后查看如下结果则为正常

ovs-vsctl show | grep br-data

Port int-br-data

Interface int-br-data

options: {peer=phy-br-data}

Bridge br-data

Port phy-br-data

Interface phy-br-data

options: {peer=int-br-data}

Port br-data

Interface br-data

修复完成检察

按照步骤3.1进行检察。

应急回退

按照3.2记录的该节点数据进行回退修改。

posted @ 2023-04-25 11:12  XU-NING  阅读(46)  评论(0编辑  收藏  举报