云耀服务器L实例进行操作系统迁移
1. 云耀云服务器L实例简介
云耀云服务器(Hyper Elastic Cloud Server,HECS)是可以快速搭建简单应用的新一代云服务器,具备独立、完整的操作系统和网络功能。提供快速应用部署和简易的管理能力,适用于网站搭建、开发测试环境、企业应用等低负载应用场景。具有易搭建、更实惠、易维护、更安全的特点。
云耀云服务器L实例是华为云基于瑶光智慧云脑推出的新一代云服务器,具备独立、完整的操作系统和网络功能,可以快速搭建简单应用。它适用于多种低负载应用场景,如网站搭建、开发环境等,也可以用于中小企业和开发者的业务部署,如小程序、跨境电商、音视频服务端和私有云盘等场景。云耀云服务器L实例提供了快速的应用部署和简易的管理能力,同时集成了多个华为云产品的功能来帮助搭建和管理应用,使得管理和运维更加便捷。
1.2 云耀云服务器与弹性云服务器区别
与弹性云服务器相比,云耀云服务器简化了购买ECS过程中的一些高级配置,一站式融合购买、登录、磁盘配置、网络配置、云监控、主机安全等多种功能,帮助您更加便捷高效的部署、配置和管理应用。
说明:
HECS底层使用的物理硬件资源与ECS一致,同CPU、内存的HECS与ECS计算能力在同一标准。
云耀云服务器与弹性云服务器的主要区别:
-
云耀云服务器:云耀云服务器是可以快速搭建简单应用的新一代云服务器,按已搭配的套餐售卖,适用于低负载应用场景,可以更加便捷、更加高效的部署、配置和管理应用。
说明:
高负载应用场景推荐使用弹性云服务器ECS,性能更稳定。
-
弹性云服务器:弹性云服务器提供多种计费模式、规格类型、镜像类型、磁盘类型,针对不同的业务场景,自定义配置弹性云服务器。
1.3 云耀负载均衡
弹性负载均衡(Elastic Load Balance,简称ELB)是将访问流量根据分配策略分发到后端多台服务器的流量分发控制服务。弹性负载均衡可以通过流量分发扩展应用系统对外的服务能力,同时通过消除单点故障提升应用系统的可用性。
如下图所示,弹性负载均衡将访问流量分发到后端三台应用服务器,每个应用服务器只需分担三分之一的访问请求。同时,结合健康检查功能,流量只分发到后端正常工作的服务器,从而提升了应用系统的可用性。
弹性负载均衡由以下3部分组成:
-
负载均衡器:接受来自客户端的传入流量并将请求转发到一个或多个可用区中的后端服务器。
-
监听器:您可以向您的弹性负载均衡器添加一个或多个监听器。监听器使用您配置的协议和端口检查来自客户端的连接请求,并根据您定义的分配策略和转发策略将请求转发到一个后端服务器组里的后端服务器。
-
后端服务器
每个监听器会绑定一个后端服务器组,后端服务器组中可以添加一个或多个后端
2. 云耀云服务器L实例购买
2.1 云耀服务器L实例购买
进入华为云官网: https://www.huaweicloud.com/
进入控制台
搜索云耀服务器HECS
选择登录L实例控制台
如果没有应用实例,则可以选择购买资源
云耀服务器L实例在购买阶段相对于传统的华为云ECS服务器购买十分简单便捷
关于区域选择,可以按照下面规则选择合适的区域
- 地理位置就近原则。根据用户群所在位置,应就近选择区域以减少网络时延,提高访问速度。
- 不同区域价格差异。不同区域的服务器价格可能会有所不同,因此需考虑预算和成本效益。
- 备案考虑。根据所在的行业和业务需求,有些区域可能需要特定的备案或审批手续,应该提前了解和考虑。
- 多产品同区域内网互通。如果需要将多个华为云产品部署在同一区域内,以便实现内网互通,可以提高访问速度和数据传输效率。
本次我选择的是Centos7.8版本
关于实例规格选择,这要根据大家的实际业务需求和资金进行综合考虑
综上考虑,我现在的区域为华北-北京四,系统镜像为Centos7.8,实例规格为2c-2G,先购买一个月
大家也可以根据自己需求选择增配数据盘,主机安全,云备份等功能
点击立即购买并支付费用,支付成功后回到云耀服务器L实例控制台等待机器创建成功。
2.1.1 云耀服务器L实例初始化配置
进入云耀服务器L实例控制台,可以看到我们购买的实例
单击实例,进入控制界面
在这里可以看到此服务器的一些基本信息
首先需要重置密码
对于我们是下个步骤安装宝塔过程中需要开放一些端口,所以还需要配置安全组规则
选择更改安全组,选择自己认为合适的安全组或者新建安全组规则
2.1.2 远程登录云耀服务器L实例
每个人的喜好不太一样,常用的shell登录终端有很多,这里我使用的是MobaXterm
MobaXterm是一款强大的终端工具,它集成了SSH客户端、X服务器和Unix命令集工具箱。在Windows操作系统下,MobaXterm可以帮助用户轻松地连接并操作Linux服务器。
MobaXterm具有以下特点:
- 集成了SSH客户端:MobaXterm通过内嵌SSH客户端,可以快速建立与Linux服务器的安全连接,实现远程登录和管理。
- 支持X服务器:MobaXterm集成了X服务器,可以在Windows上运行Unix/Linux环境,并支持图形界面应用程序。
- 提供Unix命令集:MobaXterm集成了Unix命令集(GNU/Cygwin),用户可以在Windows上运行大多数Linux命令,实现高效的终端操作。
- 多终端视窗:MobaXterm支持开启多个终端视窗,可以同时连接多个Linux服务器,并进行灵活的终端管理。
- 可扩展性强:MobaXterm可以通过集成插件来扩展功能,例如运行Gcc、Perl、Curl、Tcl/Tk/Expect等程序。
- 免费开源:MobaXterm分为免费开源版和收费专业版,用户可以免费使用开源版,并根据需求选择专业版以获得更多的功能和更好的技术支持。
新建ssh登录,填写云耀服务器L实例的ip和用户名并输入密码
登录成功
3. Centos迁移到openeuler服务器
3. 1. 准备工作
- 辅助机:centos7.6
- redhat7.3镜像
- Bclinux for euler 21.10镜像
- 辅助机和待升级节点在同一网段可以相互联通
- x2openEuler升级工具及其依赖包
- ssh任一登录软件
3.2. 升级准备
3.2.1 修改redhat配置
首先将辅助机和待升级节点配置在同一网段
打开虚拟网络编辑器
选择NAT
模式,点击确认。(需要在管理员模式下打开)
此时在待升级节点输入命令查看本机ip
ifconfig -a
如果没有看到虚拟网卡配置的ip,可以进入
/etc/sysconfig/network-scripts
查看ens33网卡是cd /etc/sysconfig/network-scripts vi ifcfg-ens33
将onboot=no改成onboot=yes
然后重启网卡
systemctl restart network
再次查看ip
ficonfig -a
可以看到NAT模式下带升级节点ip分配为192.168.17.131
使用辅助机节点去ping该节点,网络正常
3.2.2. redhat主机挂载redhat7.3镜像
将rehhat7.3镜像放在带升级节点 /mnt
下面
redhat系统安装好尽管默认带有yum,但是redhat的更新包只对注册用户有效(收费)。所以需要更换yum源
3.2.2.1 更换yum包
基本的流程就是:
1.删除redhat7.0系统自带的yum软件包;
2.自行下载所需要的软件包;
3.根据依赖项安装;
4.新建repo配置文件。
1、查看自带的yum软件包
输入
rpm -qa | grep yum
[root@localhost network-scripts]# rpm -qa | grep yum
yum-rhn-plugin-2.0.1-6.el7.noarch
yum-metadata-parser-1.1.4-10.el7.x86_64
yum-langpacks-0.4.2-7.el7.noarch
yum-3.4.3-150.el7.noarch
yum-utils-1.1.31-40.el7.noarch
这下面列出来的软件包,要记住一下,后面要根据其来搜索rpm包来安装新版本。比如”yum-utils”、”yum-langpacks”等等。
2、卸载这些安装包
rpm -qa | grep yum | xargs rpm -e --nodeps
3、进入以下任意一个网站下载对应的rpm包
阿里云网络源地址:https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/
网易163网络源地址:http://mirrors.163.com/
CentOS网络源地址:http://centos.ustc.edu.cn/centos/
下载完后上传到服务器分别安装
安装时出现报错
[root@localhost /]# rpm -ivh yum-*
警告:yum-3.4.3-168.el7.centos.noarch.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
错误:依赖检测失败:
rpm >= 0:4.11.3-22 被 yum-3.4.3-168.el7.centos.noarch 需要
yum-plugin-fastestmirror 被 yum-3.4.3-168.el7.centos.noarch 需要
另外再回去找安装包下载下来:
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/rpm-4.11.3-32.el7.x86_64.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/python-urlgrabber-3.10-8.el7.noarch.rpm
输入指令更新rpm:
[root@localhost /]# rpm -ivh yum-plugin-fastestmirror-1.1.31-54.el7_8.noarch.rpm --nodeps
警告:yum-plugin-fastestmirror-1.1.31-54.el7_8.noarch.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:yum-plugin-fastestmirror-1.1.31-5################################# [100%]
[root@localhost /]# rpm -ivh yum-3.4.3-168.el7.centos.noarch.rpm --nodeps
警告:yum-3.4.3-168.el7.centos.noarch.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:yum-3.4.3-168.el7.centos ################################# [100%]
再次运行。
rpm -ivh yum-*
[root@localhost /]# rpm -Uvh rpm-4.11.3-45.el7.x86_64.rpm
警告:rpm-4.11.3-45.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
错误:依赖检测失败:
rpm = 4.11.3-21.el7 被 (已安裝) rpm-libs-4.11.3-21.el7.x86_64 需要
rpm = 4.11.3-21.el7 被 (已安裝) rpm-python-4.11.3-21.el7.x86_64 需要
[root@localhost /]# rpm -Uvh rpm-4.11.3-45.el7.x86_64.rpm --nodeps
警告:rpm-4.11.3-45.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:rpm-4.11.3-45.el7 ################################# [ 50%]
正在清理/删除...
2:rpm-4.11.3-21.el7 ################################# [100%]
[root@localhost /]# rpm -ivh yum-*
警告:yum-3.4.3-168.el7.centos.noarch.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
准备中... ################################# [100%]
软件包 yum-plugin-fastestmirror-1.1.31-54.el7_8.noarch 已经安装
软件包 yum-3.4.3-168.el7.centos.noarch 已经安装
3.2.2.2 redhat跳过验证
vi /etc/yum/pluginconf.d/subscription-manager.conf
[main]
enabled=0 #将1改成0
3.2.3 挂载redhat7.3
挂载redhat 7.3
mkdir redhat73
mount -o loop /mnt/rhel-server-7.3-x86_64-dvd.iso /mnt/redhat73/
[root@localhost mnt]# mkdir redhat73
[root@localhost mnt]# mount /mnt/rhel-server-7.3-x86_64-dvd.iso /mnt/r
redhat73/ rhel-server-7.3-x86_64-dvd.iso
[root@localhost mnt]# mount -o loop /mnt/rhel-server-7.3-x86_64-dvd.iso /mnt/redhat73/
mount: /dev/loop0 写保护,将以只读方式挂载
[root@localhost mnt]#
进入下面目录
cd /etc/yum.repos.d
vi redhat.repo
输入下面内容到
[redhat73]
name=redhat73
baseurl=file:///mnt/redhat73/
enabled=1
gpgcheck=0
保存好后退出,执行下面命令
yum clean all
yum makecache
yum repolist
3.5 辅助机安装配置
3.2.5.1 x2openEuler安装
x2openEuler下载地址:https://www.openeuler.org/zh/migration/download/
版本依赖下载:https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS-SP1/contrib/x2openEuler/noarch/Packages/
下载好后上传到辅助机,分别安装
yum install -y x2openEuler-*
关闭防火墙和selinux
systemctl stop firewalld
set selinux 0
3.2.5.2 x2openEuler启动
打开目录并启动x2openEuler
[root@localhost x2openEuler-upgrade]# cd /usr/local/x2openEuler/portal/service
[root@localhost service]# bash service_start.sh
Start Nginx service and Gunicorn service
Ip address list:
sequence_number ip_address device
[1] 192.168.220.132 ens33
Enter the sequence number of listed ip as web server ip(default: 1):
Set the web server IP address 192.168.220.132
Please enter HTTPS port(default: 18082):
The HTTPS port 18082 is valid. Set the HTTPS port to 18082 (y/n default: y):
Set the HTTPS port 18082
Please enter gunicorn port(default: 18080):
The GUNICORN port 18080 is valid. Set the GUNICORN port to 18080 (y/n default: y):
3.2.5.3 辅助机挂载Bclinux for Euler 21.10
安装httpd并启动httpd
yum install -y httpd
systemctl start httpd
systemctl stop firewalld
[root@localhost ~]# yum install -y httpd
已加载插件:fastestmirror, langpacks
Determining fastest mirrors
* base: mirrors.nju.edu.cn
* extras: mirrors.nju.edu.cn
* updates: mirrors.163.com
base | 3.6 kB 00:00:00
extras | 2.9 kB 00:00:00
updates | 2.9 kB 00:00:00
(1/4): base/7/x86_64/group_gz | 153 kB 00:00:00
(2/4): extras/7/x86_64/primary_db | 249 kB 00:00:00
(3/4): base/7/x86_64/primary_db | 6.1 MB 00:00:00
(4/4): updates/7/x86_64/primary_db | 20 MB 00:00:26
正在解决依赖关系
--> 正在检查事务
---> 软件包 httpd.x86_64.0.2.4.6-98.el7.centos.6 将被 安装
--> 正在处理依赖关系 httpd-tools = 2.4.6-98.el7.centos.6,它被软件包 httpd-2.4.6-98.el7.centos.6.x86_64 需要
--> 正在处理依赖关系 /etc/mime.types,它被软件包 httpd-2.4.6-98.el7.centos.6.x86_64 需要
--> 正在处理依赖关系 libaprutil-1.so.0()(64bit),它被软件包 httpd-2.4.6-98.el7.centos.6.x86_64 需要
--> 正在处理依赖关系 libapr-1.so.0()(64bit),它被软件包 httpd-2.4.6-98.el7.centos.6.x86_64 需要
--> 正在检查事务
---> 软件包 apr.x86_64.0.1.4.8-7.el7 将被 安装
---> 软件包 apr-util.x86_64.0.1.5.2-6.el7 将被 安装
---> 软件包 httpd-tools.x86_64.0.2.4.6-98.el7.centos.6 将被 安装
---> 软件包 mailcap.noarch.0.2.1.41-2.el7 将被 安装
--> 解决依赖关系完成
依赖关系解决
===========================================================================================================
Package 架构 版本 源 大小
===========================================================================================================
正在安装:
httpd x86_64 2.4.6-98.el7.centos.6 updates 2.7 M
为依赖而安装:
apr x86_64 1.4.8-7.el7 base 104 k
apr-util x86_64 1.5.2-6.el7 base 92 k
httpd-tools x86_64 2.4.6-98.el7.centos.6 updates 94 k
mailcap noarch 2.1.41-2.el7 base 31 k
事务概要
===========================================================================================================
安装 1 软件包 (+4 依赖软件包)
总下载量:3.0 M
安装大小:10 M
Downloading packages:
警告:/var/cache/yum/x86_64/7/base/packages/apr-1.4.8-7.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
apr-1.4.8-7.el7.x86_64.rpm 的公钥尚未安装
(1/5): apr-1.4.8-7.el7.x86_64.rpm | 104 kB 00:00:00
(2/5): apr-util-1.5.2-6.el7.x86_64.rpm | 92 kB 00:00:00
(3/5): mailcap-2.1.41-2.el7.noarch.rpm | 31 kB 00:00:00
httpd-tools-2.4.6-98.el7.centos.6.x86_64.rpm 的公钥尚未安装
(4/5): httpd-tools-2.4.6-98.el7.centos.6.x86_64.rpm | 94 kB 00:00:00
(5/5): httpd-2.4.6-98.el7.centos.6.x86_64.rpm | 2.7 MB 00:00:00
-----------------------------------------------------------------------------------------------------------
总计 7.6 MB/s | 3.0 MB 00:00:00
从 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 检索密钥
导入 GPG key 0xF4A80EB5:
用户ID : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
指纹 : 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
软件包 : centos-release-7-6.1810.2.el7.centos.x86_64 (@anaconda)
来自 : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : apr-1.4.8-7.el7.x86_64 1/5
正在安装 : apr-util-1.5.2-6.el7.x86_64 2/5
正在安装 : httpd-tools-2.4.6-98.el7.centos.6.x86_64 3/5
正在安装 : mailcap-2.1.41-2.el7.noarch 4/5
正在安装 : httpd-2.4.6-98.el7.centos.6.x86_64 5/5
验证中 : httpd-tools-2.4.6-98.el7.centos.6.x86_64 1/5
验证中 : mailcap-2.1.41-2.el7.noarch 2/5
验证中 : apr-1.4.8-7.el7.x86_64 3/5
验证中 : httpd-2.4.6-98.el7.centos.6.x86_64 4/5
验证中 : apr-util-1.5.2-6.el7.x86_64 5/5
已安装:
httpd.x86_64 0:2.4.6-98.el7.centos.6
作为依赖被安装:
apr.x86_64 0:1.4.8-7.el7 apr-util.x86_64 0:1.5.2-6.el7 httpd-tools.x86_64 0:2.4.6-98.el7.centos.6
mailcap.noarch 0:2.1.41-2.el7
完毕!
[root@localhost ~]# systemctl start httpd
#启动httpd后,打开下面目录,新建euler2110
cd /var/www/html
mkdir bceuler2110
# 将bclinux for Euler 21.10上传到/mnt下面
将镜像挂载到/var/www/html/bceuler2110
mount -o loop /mnt/BCLinux-for-Euler-21.10-everything-x86_64.iso /var/www/html/bceuler2110/
[root@localhost html]# mount -o loop /mnt/BCLinux-for-Euler-21.10-everything-x86_64.iso /var/www/html/bceuler2110/
mount: /dev/loop0 写保护,将以只读方式挂载
输入下面命令
yum clean all
yum makecache
3.6. 操作系统升级
在x2openEuler启动成功后,打开启动的web端
https://192.168.220.132:18082/x2openEuler/#/login
设置初始密码
登录
新建任务–系统升级
按照要求填写信息
源操作系统版本选择对应的centos即可
repo源选择新建
输入下面内容
[local]
name=local
baseurl=http://192.168.220.132/bceuler2110/
enabled=1
gpgcheck=0
配置完成后点击确认
点击确认进行连通性测试
测试通过,开始升级前检查
升级前检查通过,开始升级
此时升级报错,需要进入待升级节点查看报错详情
cd /opt/x2openEuler-upgrade
# 进入目录手动安装x2openEuler-upgrade-1.1.3-33.x86_64.rpm
yum install -y x2openEuler-upgrade-1.1.3-33.x86_64.rpm
报错如下
错误:软件包:x2openEuler-upgrade-1.1.3-33.x86_64 (/x2openEuler-upgrade-1.1.3-33.x86_64)
需要:rsync >= 3.1.0
已安装: rsync-3.0.9-17.el7.x86_64 (@anaconda/7.3)
rsync = 3.0.9-17.el7
您可以尝试添加 --skip-broken 选项来解决该问题
您可以尝试执行:rpm -Va --nofiles --nodigest
这时需要手动将yum源更改为bclinux for euler21.10的yum源
cd /etc/yum.repos.d/
vi redhat73.repo
将内容改为如下
[redhat73]
name=redhat73
baseurl=http://192.168.220.132/bceuler2110/
#baseurl=file:///mnt/redhat73/
enabled=1
gpgcheck=0
yum clean all
yum makecache
cd /opt/x2openEuler-upgrade/
yum install -y x2openEuler-upgrade-1.1.3-33.x86_64.rpm
x2openEuler-upgrade-1.1.3-33.x86_64.rpm安装成功
将yum源再改回redhat的yum源
[root@localhost x2openEuler-upgrade]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# vi redhat73.repo
[redhat73]
name=redhat73
#baseurl=http://192.168.220.132/bceuler2110/
baseurl=file:///mnt/redhat73/
enabled=1
gpgcheck=0
yum clean all
yum makecache
回到辅助机web界面,选择回退
再次选择开始升级
再次报错
进入控制台手动安装yum-utils
可能是redhat回退重启导致redhat镜像挂载失败,重新挂载
[root@localhost yum.repos.d]# mount -o loop /mnt/rhel-server-7.3-x86_64-dvd.iso /mnt/redhat73/
mount: /dev/loop0 写保护,将以只读方式挂载
[root@localhost yum.repos.d]# yum makecache
已加载插件:langpacks, product-id, search-disabled-repos
redhat73 | 4.1 kB 00:00:00
(1/4): redhat73/group_gz | 136 kB 00:00:00
(2/4): redhat73/filelists_db | 3.3 MB 00:00:00
(3/4): redhat73/primary_db | 3.9 MB 00:00:00
(4/4): redhat73/other_db | 1.5 MB 00:00:00
元数据缓存已建立
再次升级
升级完成
重启节点,清理日志文件
去面板查看升级信息
cat /etc/os-release
cat /etc/redhat-release
rpm -qa |grep kernel
[root@localhost ~]# cat /etc/os-release
NAME="BigCloud Enterprise Linux"
VERSION="21.10 (LTS-SP2)"
ID="bclinux"
VERSION_ID="21.10"
PRETTY_NAME="BigCloud Enterprise Linux For Euler 21.10 LTS"
ANSI_COLOR="0;31"
[root@localhost ~]# cat /etc/redhat-release
BigCloud Enterprise Linux For Euler release 21.10 (LTS-SP2)
[root@localhost ~]# rpm -qa |grep kernel
kernel-4.19.90-2211.4.0.0177.oe1.bclinux.x86_64
[root@localhost ~]#
升级成功。
4. 总结
本文主要介绍了云耀云服务器L实例的购买以及Centos迁移到openeuler服务器的过程。云耀云服务器L实例是一种灵活的云服务器,用户可以根据需求选择不同规格的实例来满足不同的业务需求。在购买L实例时,用户可以选择按需购买或者包年包月的方式来支付费用。Centos迁移到openeuler服务器需要经过一系列的步骤,包括辅助机的选择、镜像下载、网络配置、系统升级等。