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

news2024/9/27 23:35:22

项目实训一

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

【实训题目】

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

【实训目的】

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

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

【实训准备】

(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 root

Enter password:              #密码可以从Packstack安装自动产生的应答文件中查找。

Welcome to the MariaDB monitor.  Commands end with ; or \g.

Your MariaDB connection id is 3402

Server version: 10.3.20-MariaDB MariaDB Server



Copyright (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 names

You can turn off this feature to get a quicker startup with -A



Database 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: 0



MariaDB [(none)]> use nova_api; #指定当前数据库

Reading table information for completion of table and column names

You 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.coloradmin.cn/o/1615212.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

力扣110. 平衡二叉树

思路&#xff1a;与二叉树最大高度类似&#xff0c;但是这里需要返回 -1 的高度来标识不是平衡二叉树&#xff0c;判断左右子树的高度相差大于1则不平衡&#xff0c;否则就是平衡。 class Solution {public boolean isBalanced(TreeNode root) {int ans func(root);if(ans >…

向Linux内核添加新功能的静态加载与动态加载

目录 向Linux内核添加新功能的静态加载与动态加载 开发环境&#xff1a; 一、静态加载法 1、新功能源码与Linux内核源码在同一个目录结构下 2、给新功能代码配置Kconfig 3、给新功能代码改写Makefile 4、使用make menuconfig 在配置界面里将新功能对应的那项选择成<*&…

AI商业智能的一些分享

本文主要讲AI商业相关的&#xff08;特别是营销相关的&#xff09;一些知识点&#xff0c;比较零散。 简单总结 AI商业智能&#xff1a; 1&#xff09;将人员经验抽象化为算法规则&#xff0c; 2)打造数据驱动的精益运营能力&#xff0c; 3)长期保持价格竞争力并将商品毛利让…

Java中的重写

package day34; ​ public class Father {String name;int age;public void 输出(){System.out.println("father");} } ​ package day34; ​ public class Son extends Father{Overridepublic void 输出() {System.out.println("son");} } ​ package d…

【LAMMPS学习】八、基础知识(3.8)计算扩散系数

8. 基础知识 此部分描述了如何使用 LAMMPS 为用户和开发人员执行各种任务。术语表页面还列出了 MD 术语&#xff0c;以及相应 LAMMPS 手册页的链接。 LAMMPS 源代码分发的 examples 目录中包含的示例输入脚本以及示例脚本页面上突出显示的示例输入脚本还展示了如何设置和运行各…

Spring基础 SpringAOP

前言 我们都知道Spring中最经典的两个功能就是IOC和AOP 我们之前也谈过SpringIOC的思想 容器编程思想了 今天我们来谈谈SpringAOP的思想 首先AOP被称之为面向切面编程 实际上面向切面编程是面向对象的编程的补充和完善 重点就是对某一类问题的集中处理 前面我们写的统一异常管理…

2024接口自动化测试入门基础知识【建议收藏】

接口自动化测试是指通过编写测试脚本和使用相关工具&#xff0c;对软件系统的接口进行自动化测试的过程。 今天本文从4个方面来介绍接口自动化测试入门基础知识 一、接口自动化测试是什么&#xff1f; 二、接口自动化测试流程&#xff1f; 三、接口自动化测试核心知识点有那些…

Linux--uboot移植(二)

修改uboot以匹配开发板的方式有两种&#xff0c;一种是在NXP原厂开发板i.MX 6ULL EVK的文件上进行修改&#xff0c;另一种仿造NXP的开发板文件&#xff0c;添加自己的开发板文件。 为了能更多的了解uboot&#xff0c;我们使用代码改动较大的第二种方式进行uboot的移植。 在修…

HTML5+JavaScript实现语音合成(文字转语音)

HTML5JavaScript实现语音合成&#xff08;文字转语音&#xff09; 本文介绍用HTML5和JavaScript实现语音合成朗读&#xff08;文字转语音&#xff09;。 Web Speech API 有两个部分&#xff1a;SpeechSynthesis 语音合成&#xff08;文本到语音 TTS&#xff09;和 SpeechReco…

双周回顾#009 - 大黄和我

双周回顾#009 - 大黄和我 说一个笑话&#xff0c;被朋友催更了&#xff0c;这就有点尴尬了&#xff01;&#xff01;&#xff01; 最近一个月&#xff0c;把空闲时间都点在了“玩”上&#xff0c;看闲书、玩游戏、背包客。 部落冲突 《埃隆马斯克传》一书中&#xff0c;马斯…

ubunt18.04安装ROS避坑指南

1 前言&#xff1a; 本文是ubunt18.04下安装ros的&#xff0c;如果想使用ros2,请看我的下一篇文章,ubunt18.04安装ROS2 本来是不该写的&#xff0c;有官方文档&#xff0c;还有很多大神的分析。但里面的坑太多&#xff0c;我考虑了一下&#xff0c;还是想记录下避免下次在跳泥…

day06 51单片机-点阵led

1 点阵LED 1.1 需求描述 本案例介绍如何使用点阵LED显示一排由左上到右下的斜线。 1.2 硬件设计 1.2.1 硬件原理图 点阵内部的原理图: 点阵LED的原理也非常简单,就是LED点灯。例如,我们想要让13列(阳极端)9行(阴极端)的LED点亮,需要13为高电平,9为低电平。注意对于…

《王者荣耀》游戏攻略:角色排行榜——墨子

作为天蝎座黄金圣斗士&#xff0c;墨子以他的正义感和荣誉感闻名&#xff0c;一直站在正义的一方&#xff0c;忠于女神雅典娜。他的猩红毒针象征着审判和死亡&#xff0c;而他所施加的十五针“安达里士”更是生命终结的预兆。在冥王再次发动战争之际&#xff0c;墨子追随雅典娜…

ResNet详解

一、认识ResNet ResNet&#xff08;Residual Network&#xff09;是一种深度神经网络结构&#xff0c;被广泛应用于图像分类、目标检测和语义分割等计算机视觉任务中。它是由微软亚洲研究院的何凯明等人于2015年提出的&#xff0c;通过引入残差连接&#xff08;residual conne…

javaScript3

javaScript 一.对象1.概念2.创建对象的三种方法(1).字面量创建&#xff08;利用{}&#xff09;(2)变量、属性、函数、方法的区别(3).new Object创建(4).构造函数 3.new关键字的执行过程4.遍历对象&#xff08;for..in) 二.内置对象 一.对象 1.概念 一组无序的相关属性和方法的…

Pycharm破解流程

1.下载pycharm 网上很多&#xff0c;随便找一个&#xff0c;懒得找的话&#xff0c;或者去我传上去的资源pycharm部分直接取 2.下载文件 文件部分&#xff0c;我放在pycharm文件里面一起 打开下载好的激活包 3.执行脚本 先执行unisntall-all-users.vbs,直接双击打开&#xff0c…

咱们来唠唠2024年参加三下乡社会实践活动怎样联系媒体投稿?

作为一名在校大学生,我深深珍视每一次增长见识、锻炼能力的机会,每年寒暑假期间,我都积极参与学院的“三下乡”社会实践活动。这不仅是我贴近生活、体验基层的大好时机,更是我积累人生经验、拓宽视野的重要途径。每次活动结束后,按照学院的要求,我们需要将实践纪实整理成文,向各…

《神奇女侠3:暗黑之魂》AI制作电影短片(下)

《神奇女侠3&#xff1a;暗黑之魂》AI制作电影短片&#xff08;下&#xff09; 黑暗滋生&#xff0c;世界沦陷&#xff0c;神奇女侠独战群魔&#xff0c;唤醒挚爱&#xff0c;守护最后的光明&#xff01; 《神奇女侠3&#xff1a;暗黑之魂》&#xff08;下&#xff09;故事继续…

Scikit-Learn支持向量机分类

Scikit-Learn 支持向量机分类 1、支持向量机&#xff08;SVM&#xff09;1.1、SVM概述1.2、SVM原理1.3、SVM的损失函数1.4、支持向量机分类的优缺点 2、Scikit-Learn支持向量机分类2.1、Scikit-Learn支持向量机分类API2.2、支持向量机分类初体验&#xff08;手写数字识别&#…

AES和RSA加解密算法学习笔记(实战版)

1. 写在前面 今天整理一篇有关密码学的学习笔记,原因是最近做的一个任务是在网络传输的时候,需要对传输的包进行加密和解密工作,以保证传输过程的安全性。所以,这个过程用到了AES和RSA两个算法。 场景:假设我要给我的老师传送毕设代码和论文, 我已经把代码和论文打成了一…