OpenStack云计算(十)——OpenStack虚拟机实例管理,增加一个计算节点并进行实例冷迁移,增加一个计算节点的步骤,实例冷迁移的操作方法

devtools/2024/11/13 15:31:14/

项目实训一

本实训任务对实验环境要求较高,而且过程比较复杂,涉及的步骤非常多,有一定难度,可根据需要选做。可以考虑改为直接观看相关的微课视频

【实训题目】

增加一个计算节点并进行实例冷迁移

【实训目的】

熟悉增加一个计算节点的步骤。

熟悉实例冷迁移的操作方法。

【实训准备】

(1)复习使用Packstack安装器增加节点的基本方法。

(2)另外准备一台操作系统为CentOS 7的主机作为计算节点。

【实训内容】

(1)在实验1的基础上克隆一台虚拟机,将IP地址改为其他地址,确保跟openstack主机IP地址不一样。然后重启网卡。此为第2个节点虚拟机

cd /etc/sysconfig/network-scripts

修改IP地址:IPADDR=192.168.128.29(自己的IP段)

节点1:192.168.128.128

节点2:192.168.128.28

重启网卡

systemctl restart network

(2)修改主机名

建议第1个节点名为:node-a 第2个节点名为:node-b

vi /etc/hostname

修改之后退出重启虚拟机,在命令行前面就显示了

init 6

(3)如果需要修改原来的openstack主机名,则按照如下步骤实现,建议直接在原来的主机名基础上做,不用修改主机名

在单节点的RDO一体化OpenStack云平台的基础上使用Packstack安装器再增加计算节点,构建双节点的实验平台时,如果在部署RDO一体化OpenStack云平台时,/etc/hosts配置文件中保留了以下默认配置:

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

那么,该节点的计算主机名会显示为localhost,这种情形在增加计算节点之前,为便于区分不同节点,最好将localhost改为明确的节点主机名(如node-a),只是操作有些复杂,下面给出操作步骤供参考(这可以作为修改计算节点名的通用方法)。

(3.1)停止相关的计算服务
systemctl stop libvirtd.service openstack-nova-compute.service openstack-nova-scheduler.service   openstack-nova-conductor.service openstack-nova-novncproxy.service
 (3.2)修改/etc/nova/nova.conf配置文件,将其中的host改为指定的节点主机名,将

#host=<current_hostname>

host=localhost

改为:

#host=<current_hostname>

host=node-a

(3.3)修改底层的数据库
[root@node-a ~]# mysql -u rootEnter password:              #密码可以从Packstack安装自动产生的应答文件中查找。Welcome to the MariaDB monitor.  Commands end with ; or \g.Your MariaDB connection id is 3402Server version: 10.3.20-MariaDB MariaDB ServerCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> use nova;                       #指定当前数据库Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -ADatabase changed#更改计算节点名MariaDB [nova]> update compute_nodes set host='node-a' where host='localhost';    Query OK, 1 row affected (0.001 sec)Rows matched: 1  Changed: 1  Warnings: 0#更改现有虚拟机实例的计算节点名MariaDB [nova]> update instances set host='node-a' where host='localhost';Query OK, 12 rows affected (0.005 sec)Rows matched: 12  Changed: 12  Warnings: 0#更改现有虚拟机实例的启动的计算节点名MariaDB [nova]> update instances set launched_on='node-a' where launched_on='localhost';           Query OK, 14 rows affected (0.002 sec)Rows matched: 14  Changed: 14  Warnings: 0#更改计算服务的节点主机名MariaDB [nova]> update services set host='node-a' where host='localhost';Query OK, 5 rows affected (0.001 sec)Rows matched: 5  Changed: 5  Warnings: 0MariaDB [(none)]> use nova_api; #指定当前数据库Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -A#更改主机映射的节点主机名MariaDB [nova_api]> update host_mappings set host='node-a' where host='localhost';MariaDB [nova]> flush privileges;Query OK, 0 rows affected (0.001 sec)MariaDB [nova]> quit;Bye
 (3.4)启动相关的计算服务

systemctl start libvirtd.service openstack-nova-compute.service openstack-nova-scheduler.service   openstack-nova-conductor.service openstack-nova-novncproxy.service  

(4)修改/etc/hosts配置文件

(节点1、节点2都要改)

vi /etc/hosts

将节点1的文件改为: 

节点2的文件改为

节点1:

节点2:

(5)在节点2,安装必要的软件

yum -y install centos-release-openstack-train

yum makecache

yum -y install openstack-packstack

(6)在节点1,编辑应答文件

将root文件夹下生成的应答文件复制一份:packstack-answers-addnode.txt

cp packstack-answers-20230922-094512.txt packstack-answers-addnode.txt

vi packstack-answers-addnode.txt

CONFIG_COMPUTE_HOSTS=192.168.233.128,192.168.233.28

CONFIG_PROVISION_DEMO_FLOATRANGE=192.168.233.0/24

CONFIG_KEYSTONE_ADMIN_PW=123456

CONFIG_KEYSTONE_DEMO_PW=123456

(7)在节点1执行,使用修改过的应答文件运行Packstack安装器

packstack --answer-file=packstack-answers-addnode.txt
…
Installing:
Clean Up                                             [ DONE ]
Discovering ip protocol version                      [ DONE ]
root@192.168.199.32's password:                     #提供第2个节点root账户密码
Setting up ssh keys                                  [ DONE ]
Preparing servers                                    [ DONE ]
…
Copying Puppet modules and manifests                 [ DONE ]
Applying 192.168.199.31_controller.pp
192.168.199.31_controller.pp:                        [ DONE ]           
Applying 192.168.199.31_network.pp
192.168.199.31_network.pp:                           [ DONE ]        
Applying 192.168.199.31_compute.pp
Applying 192.168.199.32_compute.pp                     #应用第2个计算节点
192.168.199.31_compute.pp:                           [ DONE ]        
192.168.199.32_compute.pp:                           [ DONE ]        
Applying Puppet manifests                            [ DONE ]
Finalizing                                           [ DONE ]
(7.1)//在节点2处理错误,在节点1继续执行安装命令

------------------------------------------------------------------------------------------------------------------

//错误1:leatherman_curl.so.1.3.0: cannot open shared object file

//处理:# yum downgrade -y leatherman

出现节点一错误:

------------------------------------------------------------------------------------------------------------------

//错误2:Error: Package: python2-qpid-proton-0.26.0-2.el7.x86_64 (centos-openstack-train)

//处理:# yum install -y python2-qpid-proton-0.26.0-2.el7.x86_64

------------------------------------------------------------------------------------------------------------------

//安装成功截图

//错误3:Could not set 'present' on ensure: undefined method `split' for nil:NilClass

(8)验证双节点部署

虚拟机管理器列表

计算主机列表

计算服务列表

网络代理列表

新创建测试用的虚拟机实例

新创建的虚拟机实例在node-b主机上运行

任务3 迁移虚拟机实例

------------------------------------------------------------------------------------------------------------------

1)在计算节点之间配置SSH无密码访问

------------------------------------------------------------------------------------------------------------------

//配置ssh无密码访问(第4步,两个节点都要执行)

ls -l /var/lib/nova/.ssh

echo -e 'strictHostKeyChecking no' > /var/lib/nova/.ssh/config 

节点1:

scp -r /var/lib/nova/.ssh/config ZHT-A:/var/lib/nova/.ssh/config

节点2:

scp -r /var/lib/nova/.ssh/config zht33:/var/lib/nova/.ssh/config

usermod -s /bin/bash nova

节点1:

节点2:

//测试

su - nova

ssh zht33

ssh ZHT-A

exit

//在两个节点都要重启nova服务

# systemctl restart libvirtd openstack-nova-compute

节点1:

节点2:

2)执行实例的冷迁移操作(Web界面操作)

------------------------------------------------------------------------------------------------------------------

//admin用户——管理员——计算——实例——迁移实例


http://www.ppmy.cn/devtools/17441.html

相关文章

MATLAB实现蚁群算法优化柔性车间调度(ACO-fjsp)

蚁群算法优化车间调度的步骤可以分为以下几个主要阶段&#xff1a; 1.初始化阶段&#xff1a; 设置算法参数&#xff0c;如信息素浓度、启发式因子等。这些参数将影响蚂蚁在选择路径时的决策过程。 确定车间调度的具体问题规模&#xff0c;包括工件数量、机器数量以及每个工件…

模拟电路 第三章(模拟集成电路)

一、模拟集成电路中的直流偏置技术 1、镜像电流源 镜像电流源的电路图如下图所示&#xff0c;、的参数完全相同&#xff0c;即、&#xff0c;由于两管具有相同的基-射极间电压&#xff08;&#xff09;&#xff0c;所以、。当BJT的较大时&#xff0c;基极电流可以忽略&#xf…

C语言求 MD5 值

MD5值常被用于验证数据的完整性&#xff0c;嵌入式开发时经常用到。md5sum命令可以求MD5码&#xff0c;下面介绍如何用C语言实现MD5功能。 一、求字符串MD5值 1、md5sum命令 $ echo -n "12345678" | md5sum //获取"12345678"字符串的md5值 结果&…

html、css、QQ音乐移动端静态页面,资源免费分享,可作为参考,提供InsCode在线运行演示

CSDN将我上传的免费资源私自变成VIP专享资源&#xff0c;且作为作者的我不可修改为免费资源&#xff0c;不可删除&#xff0c;寻找客服无果&#xff0c;很愤怒&#xff0c;&#xff08;我发布免费资源就是希望大家能免费一起用、一起学习&#xff09;&#xff0c;接下来继续寻找…

百度沈抖:智能,生成无限可能

4月16日&#xff0c;Create 2024百度AI开发者大会在深圳举行。会上&#xff0c;百度集团执行副总裁、百度智能云事业群总裁沈抖正式发布新一代智能计算操作系统——百度智能云万源。它能管理万卡规模的集群&#xff0c;极致地发挥GPU、CPU的性能&#xff1b;它有强大的大模型作…

Js-JavaScript-三种弹出提示框-alert-confirm-prompt-ai插件

文章目录 1.alert-提示框2.confirm-确认框3.prompt-输入框4.总结 1.alert-提示框 alert (message: string , title: string , errorIcon: Boolean ) Core JavaScript Classes Displays an alert box message: Data Type: string The text to display title (optional): Data Ty…

vue项目打包时因为图片问题报错

执行 npm run build命令打包项目时报错&#xff0c;看起来是图片的问题&#xff1a; package.json里面image-webpack-loader的版本是^7.0.1 解决方案&#xff1a; 1、先卸载 npm uninstall image-webpack-loader 2、用cnpm重新安装 cnpm install image-webpack-loader --save…

Kotlin语法入门-数据类、伴生类、枚举类(9)

Kotlin语法入门-数据类、伴生类、枚举类(9) 文章目录 Kotlin语法入门-数据类、伴生类、枚举类(9)九、数据类、伴生类、枚举类1、数据类2、伴生类2.1、定义伴生类2.2、JvmStatic注解2.3、const关键字 3、枚举类3.1、定义3.2、传参3.3、继承与实现 九、数据类、伴生类、枚举类 1…