论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
应用中心
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
qidao123.com技术社区-IT企服评测·应用市场
»
论坛
›
主机系统
›
linux
›
基于华为taishan200服务器、arm架构kunpeng920 cpu的虚 ...
基于华为taishan200服务器、arm架构kunpeng920 cpu的虚拟化实战 ...
王國慶
论坛元老
|
2024-12-22 17:53:19
|
显示全部楼层
|
阅读模式
楼主
主题
1980
|
帖子
1980
|
积分
5944
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
1、简介
最近两天在搞arm架构的应用部署工作,但是我们只有一台arm的服务器,是华为的taishan200,cpu架构是arm的,型号是920。一开始打算利用的是esxi,esxi可以说是虚拟化的老大,但是由于其仅支持x86和一些国外的arm服务器,不支持国内的cpu,所以只能放弃。想过租阿里的arm云服务器,但是大环境啊,租不起了。
随后又调研了一些开源和国内的虚拟化平台,比如:
FreeVM、
Proxmox VE,但是free vm在免费版的情况下,只支持虚拟4c4g的虚机,这不满意我们的需求;Proxmox VE 固然可以做到支持国产服务器arm的方案,但是由于需要更改太多的东西,容易把呆板玩废了,所以也只能放弃。
哦,这里说下,固然可以安装debian后,在安装Proxmox,但是这个没有尝试过,可能也需要较长的时间,而且不能保证在改动之后,可以乐成虚拟虚机,所以这个不是我的选择。
最终在个人调研情况下,决定接纳较为稳妥的方式:
服务器开启虚拟化
安装可以展示界面的linux操纵系统(openeuler)
在openeuler操纵系统中,安装kvm qemu以及虚拟化管理工具
创建虚机,完成虚拟化使命
2、服务器查看是否开启虚拟化
我这里的服务器是华为taishan 200,cpu架构arm,cpu型号 kunpeng920
2.1 开机进入bios
这一步其实没什么好说的,就是关闭服务器,然后按下开机按钮,稍等片刻
出现上图的时间,疯狂按“Delete”或“F4”(大概开机之后,就开始按也行),顺利的话,可能会让你输入密码
初始的密码应该是admin@9000(如果你没有改过的话)
2.2 查看虚拟化是否开启
实行完2.1的步骤之后,就会进入bios的mian界面
之后需要通过键盘上的←和→来移动选项,进入 Advanced,然后选择pcle config,回车
进入pcie config界面后,如下图,选择sriou,将其改为enable。
相干参数阐明:
启用或停用Single Root Input/Output Virtualization(SRIOV),菜单选项为:
Enable 启用
Disable 停用
之后后退,然后F10,生存并退出。
3、下载openeuler镜像,并写入U盘
3.1 下载openeuler镜像
华为的呆板,利用华为的操纵系统,这非常nice。可以搜索openeuler,进下载页面
筛选一下各自呆板的资源配置,比如架构 aarch64、我想要的lts版本(长期维护支持)
我选择的是“openEuler 22.03 LTS SP4”,如果后续在页面中找不到了,可以评论留言要下载所在。点击“openEuler 22.03 LTS SP4”后面的前去下载,进入下图的页面。
然后选择aarch64和服务器,筛选一下,在点击立即下载,就可以下载iso了。这里不建议下载第二个全部安装,因为在安装的时间有冲突,而且写入的时间太长了。
3.2 镜像写入U盘
我风俗利用rufus工具写入iso,这是一个非常好用的工具,按照下图中的选项举行选择即可
点击开始后,会提示如下内容,提前阐明,需要将U盘中的数据举行生存哈
接下来就是一个漫长的等候,究竟需要举行:格式化U盘,设置卷标,写入文件一系列操纵
出现上图,已经表现写入乐成,就可以到服务器上插U盘了
4、进到服务器从U盘启动
注:此步骤实行前需要备份服务器中的数据(我这里确认不需要生存后,就直接格式化了)
比力幸运的是,taishan200可以在启动后通过F2,选择启动盘
在开启出现这个界面或出现之前,疯狂按F2(按“F2”进入选择启动项界面)
之后就是输入密码,默认密码在上面写了,这里不重复
输入密码之后选择插入的U盘
5、安装openeuler
在出现下图时,选择“Test this media & install openEuler 22.03-LTS-SP4”
选择“Test this media & install openEuler 22.03-LTS-SP4”之后,稍等片刻,会出现下图
接下来就是选择利用的语言、硬盘、开启网络、主机名、设置时区、创建用户等步骤。
安装的目标地,就选择服务器上的硬盘就可以,如果是已有数据的硬盘,可能会剩余空间不足,在选择磁盘后,点击回收空间,确定不需要生存数据,就选择后,有个全部删除,然后openeuler会自动重置了。
然后就是开启root用户,输入密码,然后选择安装,等完成后,重启系统就可以了。
6、配置服务器为静态ip
进入服务器后,编辑/etc/sysconfig/network-scripts/ifcfg-enp125s0f0文件,我这里是这个名字,有几个网卡选择那个就行,这里如何确定,你利用的是哪个文件呢
6.1 确定需要修改的网络文件
通过shell毗连服务器后,实行
ip addr show
复制代码
可以通过这个方式,看到利用的网卡名称,然后举行编辑就可以了
6.2 编辑文件
vi /etc/sysconfig/network-scripts/ifcfg-enp125s0f0
TYPE="Ethernet"
BOOTPROTO="static"
NAME="enp125s0f0"
DEVICE="enp125s0f0"
ONBOOT="yes"
IPADDR="192.168.1.253"
GATEWAY="192.168.1.1"
PREFIXn="255.255.255.0"
DNS1="8.8.8.8"
复制代码
相干参数阐明:
vi xxxx:通过vi编辑网卡文件
TYPE=Ethernet:网络范例 以太网
BOOTPROTO=static:利用静态ip
NAME:网卡名称(与编辑的文件后缀一样)
DEVICE:系统逻辑名(与编辑的文件后缀一样)
ONBOOT:是否开机启动网卡,这是是yes
IPADDR:指定的ip所在
GATEWAY:网关
DNS1:指定的第一个DNS服务器
PREFIXn:这个参数需要阐明,openeuler不能是netmask,和centos不太一样
6.3 重启网络或重启系统
设置文件后,重启网络,让其生效
systemctl reload NetworkManager
systemctl restart NetworkManager
# 如果你那里通过上面两个命令,执行后已经生效,则不用重启。否则重启服务器
reboot
复制代码
这个地方和centos不太一样,不可以通过service network restart重启
7 安装dde,也就是桌面
如果你自大能用命令行启动虚机,那是锋利的,可以不用在看了,如果你想像在windows利用vmware一样,创建虚机,则继承按我的文档实行
7.1 更新源
DDE是统信软件团队研发的一款功能强盛的桌面环境。包罗数十款功能强盛的桌面应用,是真正意义上的自主自研桌面产品。我比力喜好这个
dnf update
复制代码
7.2 安装dde
dnf install dde
复制代码
7.3 设置以图形界面方式启动
systemctl set-default graphical.target
reboot
复制代码
重启之后,就会发现可以利用桌面的方式进入openeuler了,界面就长这个样子,我以为还是比力悦目标
8 安装虚拟化工具
由于openeuler内核已经集成了kvm,所以这里不需要单独安装kvm
8.1 安装qemu组件
yum install -y qemu
复制代码
8.2 安装libvirt组件
yum install -y libvirt
复制代码
8.3 启动libvirtd服务
systemctl start libvirtd
复制代码
8.4 验证8.1-8.3的安装结果
8.4.1 确认kvm安装
查看内核是否支持KVM虚拟化,即查看/dev/kvm和/sys/module/kvm文件是否存在,命令和回显如下:
ll /dev/kvm
ll /sys/module/kvm
复制代码
若上述文件存在,阐明内核支持KVM虚拟化。若上述文件不存在,则阐明系统内核编译时未开启KVM虚拟化,需要更换支持KVM虚拟化的Linux内核。
8.4.2 确认qemu
rpm -qi qemu
复制代码
8.4.3 确认libvirt
rpm -qi libvirt
复制代码
查询下是否启动
systemctl status libvirtd
复制代码
8.5 安装虚拟机管理工具
在这里有教程会说安装 qemu-img、virt-install libvirt virt-manager-common等,其实不需要,只需要实行
yum install virt-manager
复制代码
然后需要的内容,都会自动更新并安装,输入y,等候安装完成
8.6 启动虚拟系统管理器
有两种启动方式,一种是在shell中实行 virt-manager,就会自己弹出来管理界面。第二种就是在桌面上,找到虚拟系统管理器
9 利用虚拟系统管理器
9.1 打开虚拟系统管理器
通过8.6 的任意一种方式打开,他会长成下图的样子,固然我这里有我创建的虚机
9.2 点击+,大概文件—新建虚拟机
通过点击+,大概文件—新建虚拟机,都可以创建虚机
9.2.1 解决failed to setup uefi 不能为aarch64 找到任何uefi 二进制路径
如果你是arm架构的cpu,而且利用的是openeuler操纵系统,会碰到一个错误,就是上述的错误“解决failed to setup uefi 不能为aarch64 找到任何uefi 二进制路径”。而且不能勾选本地安装介质,network install 网络引导等。
这个错误是因为openeuler没有将“edk2.git-aarch64”工具集成,所以需要单独安装。我看了很多教程,有的是更新源,然后yum 去安装,但是我不建议如许做,因为如许可能会导致之后安装不了任何东西,国产操纵系统,能不换源,就不换。
我这里是到外网下载的“https://www.kraxel.org/repos/jenkins/edk2/”,如果没有外网,评论我要也可以。下载下图红框中的内容
将其上传到服务器的任意一个目次,实行
rpm -ivh edk2.git-aarch64*.rpm
复制代码
之后,关闭虚拟系统管理器,重新打开,就可以创建虚拟机了。
这里解决了一个坑,后面还一个。
10 创建虚拟机演示
很多教程在这里就竣事了,其实后面还有一个坑,需要解决,我在这里演示一下,方便真正的利用linux arm 虚拟机
10.1 选择本地安装介质,点击前进。
这个意思就是,你把一个iso镜像,传到服务器的一个目次。
这里我建议找一个大一点的目次,分开放iso文件和虚机磁盘的文件。
10.2 选择镜像,点击前进
由于支持arm的镜像有限,尤其是国产cpu的,封锁较为严重
注:这里会发现,你选择镜像后,并没有识别,然后就报错了。
解决方式:所以去掉“automatically ....” 这个选项,在文本框中,输入ge,然后选择generic default(generic)
10.3 选择内存和cpu,点击前进
这一步骤没什么说的,根据自己需要举行设置,但是不能超过宿主机(主机)的最大值
10.4 勾选“选择或创建自定义存储”
点击管理,然后创建个存放虚机磁盘的目次
10.5 开始错误的安装(特别注意)
这一步是个坑,如果你按照默认的内容走,这台虚机就装不上了
比如如果你的选择是上图,你设置完名字,点击完成,然后就开始安装了
那么你的结局就是,卡在“reached target basic system”这里了
10.6 开始正确的安装
如今说下正确的操纵
第一,勾选在安装前自定义配置,这个选择是为了让你可以正常安装
第二,点击选择网络,选择主机设备,原模式为桥接,这个选择是为了让你安装虚拟机后,可以让在与宿主机同一网段的呆板发现;如果你选择default,那么进去之后,只有这个宿主机能够访问虚机
然后点击完成,进入下图界面
这个时间,会有四个动作
10.6.1 添加设备—输入—通用USB
选择左下角的添加设备—选择输入—选择通用usb—点击完成
10.6.2 添加设备—输入—Evtouch usb 图形数位板
选择左下角的添加设备—选择输入—选择Evtouch usb 图形数位板—点击完成
10.6.3 添加设备—图形—VNC
选择左下角的添加设备—选择图形—选择VNC—点击完成
10.6.4 添加设备—视频—virtio
这一步也是10.5那个错误的步骤,那就是你要加一个视频,如许才能利用图形界面安装操纵系统
选择左下角的添加设备—选择视频—选择virtio—点击完成
10.6.5 开始安装
实行完10.6.1-10.6.4后,点击开始安装
然后发现,认识的安装操纵系统出现了
通过上图可以发现,其实10.5中卡在那,后面已经实行了,但是没有视频流,所以后面无法安装
认识的选择语言界面之类的内容出来,之后就是重复第5步和第6步的配置网络
11 竣事语
到这里,基于华为taishan200服务器, ARM架构的cpu,实现虚拟化的过程就竣事了。如果有需要的搭档,参考该文档就可以。
需要注意的两个坑,就是9.2.1 和 10.5 中这两个地方.
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
王國慶
论坛元老
这个人很懒什么都没写!
楼主热帖
webman
不想打开 IDE 的摆烂一天
Jupyter Notebook,太强大了
React技巧之发出http请求
【Shashlik.EventBus】.NET 事件总线, ...
【网络】https单向认证和双向认证 ...
APP内存管理
Apache DolphinScheduler 3.0.0 正式版 ...
Bluecmsv1.6-代码审计
java如何显示"html转义字符"对应的原始 ...
标签云
渠道
国产数据库
集成商
AI
运维
CIO
存储
服务器
快速回复
返回顶部
返回列表