在openEuler中通过KVM可视化安装华为FusionCompute的CNA主机

一、环境说明

在Windows物理主机上通过VMware WorkStation创建一个虚拟机(4U4C、16GB内存,400GB磁盘,NAT网络连接),在虚拟机中安装openEuler 22.03 LTS系统,并将该虚拟机作为部署 FusionCompute的服务器,IP地址指定为192.168.17.80,并确保该服务器能连接Internet。

通过XShell等远程SSH连接工具连接OpenEuler服务器,然后在openEuler服务器中通过KVM可视化安装华为FusionCompute(版本为6.5.1)的CNA主机。

二、配置openEuler环境

1、安装dde桌面环境

[root@FusionCompute ~]# dnf -y install dde
[root@FusionCompute ~]# systemctl set-default graphical.target
[root@FusionCompute ~]# reboot

2、安装tigervnc软件包

[root@FusionCompute ~]# dnf  -y  install  tigervnc-server tigervnc

3、设置用户VNC连接密码

[root@FusionCompute ~]# vncpasswd
Password:	此处设置访问vnc服务器的密码
Verify:
Would you like to enter a view-only password (y/n)? n
A view-only password is not used

4、启动远程桌面连接服务

#启动远程桌面连接服务
[root@FusionCompute ~]# vncserver :1
New 'CNA-mother:1 (root)' desktop is FusionCompute :1

Creating default startup script /root/.vnc/xstartup
Creating default config /root/.vnc/config
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/CNA-mother:1.log

#查看远程桌面连接服务
[root@FusionCompute ~]# vncserver -list

WARNING: vncserver has been replaced by a systemd unit and is now considered deprecated and removed in upstream.
Please read /usr/share/doc/tigervnc/HOWTO.md for more information.

TigerVNC server sessions:

X DISPLAY #	PROCESS ID
:1		2564

注:这里的:1表示vnc服务监听端口为5901

5、编辑远程桌面连接的启动配置文件

将/root/.vnc/xstartup配置文件中原有的内容删除,然后粘贴以下内容

[root@FusionCompute ~]# vim /root/.vnc/xstartup
 
#!/bin/sh
  
  unset SESSION_MANAGER
  unset DBUS_SESSION_BUS_ADDRESS
 
  [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
  xsetroot -solid grey
  vncconfig -iconic &
  xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
  exec dbus-launch startdde &

6、配置防火墙

[root@FusionCompute ~]# firewall-cmd --permanent --zone=public --add-port=5901-5903/tcp
success
[root@FusionCompute ~]# firewall-cmd --reload 
success

7、安装KVM软件包及其依赖

#安装软件包
dnf -y install qemu-kvm qemu-img virt-manager libvirt libvirt-client virt-install virt-viewer

#加载并查看kvm模块
modprobe kvm
lsmod | grep kvm

#启动libvirtd服务
systemctl start libvirtd
systemctl status libvirtd

8、测试远程桌面连接

在Windows宿主机上,通过RealVNC Viewer程序远程桌面连接Linux服务器,端口为前面开放的5901,如下所示

成功连接后,可以看到Linux的桌面,如下所示

9、修改ssh服务配置文件

完成上述操作后,执行virt-manager命令时,会提示以下错误

(virt-manager:5124): Gtk-WARNING **: 10:25:33.675: cannot open display: 

通过修改sshd服务配置文件可以解决

vim /etc/ssh/sshd_config
#……此处省略文件其它内容,找到以下配置行,将no改成yes……
X11Forwarding yes

#完成修改后重启sshd服务
systemctl restart sshd

10、修改KVM虚拟网络

修改kvm虚拟网络配置文件/etc/libvirt/qemu/networks/default.xml,指定网关地址(ip address)和dhcp自动分配的IP地址范围(range start和end)

[root@CNA-mother ~]# vim /etc/libvirt/qemu/networks/default.xml
……省略原有部分内容……
<network>
  <name>default</name>
  <uuid>203642a9-3622-409f-bbba-5f9bc4123377</uuid>
  <forward mode='nat'/>
  <bridge name='virbr0' stp='on' delay='0'/>
  <mac address='52:54:00:25:62:e6'/>
  <ip address='192.168.18.254' netmask='255.255.255.0'>
    <dhcp>
      <range start='192.168.18.1' end='192.168.18.253'/>
    </dhcp>
  </ip>
</network>

11、检查KVM虚拟网络

执行【virt-manager】命令,打开如下所示的kvm虚拟机管理器视窗界面

选择Edit-->Connetcion Details,打开如下图所示网络界面,确认虚拟网络配置正确

三、创建和配置CNA虚拟机

1、创建虚拟机

点击kvm虚拟机管理器左上角的“+”号创建虚拟机,打开如下所示窗口

2、指定ISO镜像位置和OS类型

选择从本地媒体安装,并在如下所示窗口中指定CNA的ISO镜像文件和OS类型,CNA ISO镜像的OS为Euler 2.0,但KVM虚拟机无法自动识别,故取消自动检测,在选择列表中选择Generic default即可。

3、设置内存大小和CPU核数

CNA主机建议CPU核数不小于4,内存建议8G以上。

4、设置虚拟机磁盘镜像大小

CNA主机磁盘空间要求不小于70GB,这里指定为80GB。

5、设置主机名、网络连接模式以及安装前自定义配置

网络连接模式建议选择默认的NAT,并勾选安装前自定义配置,否则后面安装会报错。

6、修改Display Spice Sever类型

如下所示,将Display Spice选项卡下的Spice Sever类型更改为VNC server。

注:若按默认的Spice server安装,会提示如下所示的Unable to complete install: 'unsupported configuration: spice graphics are not supported with this QEMU'错误。

7、设置Video的Model

如下所示,将Video QXL选项卡下的Video的Model指定为Virtio。

注: 若按默认的QXL安装,会提示如下所示的Unable to complete install: 'unsupported configuration: domain configuration does not support 'video model' value 'qxl''的错误

8、删除USB Redirector

如下所示,删除最下面的USB Redirector1和USB Redirector2

注:若不删除,安装时会提示如下所示的Unable to complete install: 'unsupported configuration: USB redirection is not supported by this version of QEMU'错误。

9、添加网络适配器

单击虚拟机管理器左下角的“Add Hardware”按钮,再添加3个网络适配器,网络连接模式按默认的指定为NAT。

完成添加后的情况如下所示。

四、安装CNA虚拟主机系统

1、开始安装CNA虚拟主机系统

完成上述配置后,单击虚拟机管理器左上角的“Begin Installation”按钮开始安装,当出现如下安装菜单界面时,选择Install开始安装。

然后出现如下所示的安装窗口。

2、配置Network

按Tab键和方向键,选择Network,选择IPv4,直接回车

配置第一张网卡的默认网关。

在上图中选择Edit,回车进入如下IP地址配置界面,配置第一张网卡的IP地址和掩码。

3、配置主机名

选择Hostname,修改Hostname名称

4、指定登录密码

如下所示,选择Password,并配置root账号的登录密码。

5、确认配置

选择安装界面中的OK并回车,出现如下所示界面,选择Yes,确认用默认硬件驱动安装OS。

在如下所示界面,选择Yes确认继续安装。

在如下所示界面,选择Yes,确认完成配置。

在如下所示界面,选择Yes,确认格式化所有分区。

最后出现如下所示界面,开始安装。

6、完成安装并核查网络连接通性

安装完成后会自动重启,如下所示,成功安装并登录

查看IP地址,并检测网络的连通性。

五、配置SSH远程连接CNA主机

CNA主机默认不允许root远程SSH连接,只允许一个普通用户可以SSH远程连接,该普通用户账号为gandalf,默认密码为IaaS@OS-CLOUD9!。(注意,最后的!为密码的最后个字符)

为方便后面配置网络存储,可以配置CNA主机允许root远程SSH连接。

修改CNA主机的SSH服务配置文件以允许root远程SSH连接。

vi /etc/ssh/sshd_config

……此处省略文件其它内容,找到以下配置行,并将其中的no改为yes……

PermitRootLogin yes

重启sshd服务

systemctl restart sshd

完成上述配置后,就可以在openEuler服务器上通过SSH远程连接CNA主机了。

类拟的操作,创建并安装CNA02主机。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/408683.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】 yum命令使用

yum命令 yum&#xff08; Yellow dog Updater, Modified&#xff09; 是一个在 Fedora、CentOS 及其它一些基于 RPM 的 Linux 发行版中使用的包管理器。它允许用户自动安装、更新、配置和删除软件包。yum 由 Python 写成&#xff0c;基于 RPM&#xff08;Red Hat Package Mana…

【C语言】linux内核ipoib模块 - ipoib_tx_poll

一、中文注释 这段代码是 Linux 内核网络栈中与 InfiniBand 协议相关的一个部分&#xff0c;特别是与 IP over InfiniBand (IPoIB)相关。该函数负责去处理IPoIB的发送完成队列&#xff08;发送CQ&#xff09;上的工作请求&#xff08;work completions&#xff09;。以下是对这…

微信小程序开发(实战案例):本地生活 - 列表页面开发(动态渲染处理)、节流防抖(节流阀应用)

文章目录 本地生活 - 列表页面开发一、将九宫格分类换成navigator组件二、动态设置商品列表页的 title三、动态渲染商品列表页面四、上拉触底加载数据五、添加Loading加载效果六、数据加载节流防抖处理 本地生活 - 列表页面开发 导入我们上次写的 本地生活 - 首页开发的项目 运…

MySQL数据库调优之关联查询、排序查询、分页查询、子查询、Group by优化

关联查询优化 1.准备工作 CREATE TABLE IF NOT EXISTS type(id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,card INT(10) UNSIGNED NOT NULL,PRIMARY KEY(id));CREATE TABLE IF NOT EXISTS book( bookid INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, card INT(10) UNSIGNED N…

李宏毅2023机器学习作业1--homework1——python语法

# 定义list del_col del_col [0, 38, 39, 46, 51, 56, 57, 64, 69, 74, 75, 82, 87] # 删除raw_x_train中del_col的列&#xff0c;axis为1代表删除列 raw_x_train np.delete(raw_x_train, del_col, axis1) # numpy数组增删查改方法 # 定义列表get_col get_col [35, 36, 37,…

openssl3.2 - 编译 - zlib.dll不要使用绝对路径

文章目录 openssl3.2 - 编译 - 编译时的动态库zlib.dll不要使用绝对路径概述测试zlib特性在安装好的目录中是否正常笔记70-test_tls13certcomp.t80-test_cms.t对测试环境的猜测从头再编译测试安装一次测试一下随便改变位置的openssl用到zlib时是否好使测试一下随便改变位置的op…

【爬虫逆向实战篇】定位加密参数、断点调试与JS代码分析

文章目录 1. 写在前面2. 确认加密参数3. 加密参数定位4. XHR断点调试 【作者主页】&#xff1a;吴秋霖 【作者介绍】&#xff1a;Python领域优质创作者、阿里云博客专家、华为云享专家。长期致力于Python与爬虫领域研究与开发工作&#xff01; 【作者推荐】&#xff1a;对JS逆向…

实战一个 Jenkins 构建 CI/CD流水线 的简单配置过程哈

引言&#xff1a;上一期我们讲述了gitlabCI/CD工具的介绍&#xff0c;工具之争&#xff0c;本期我们介绍Jenkins CI/CD 目录 一、Jenkins介绍 1、Jenkins概念 2、Jenkins目的 3、特性 4、产品发布流程 二、安装Jenkins 1、安装JDK 2、安装Jenkins 1、上传压缩包 2、…

(done) 如何判断一个矩阵是否可逆?

参考视频&#xff1a;https://www.bilibili.com/video/BV15H4y1y737/?spm_id_from333.337.search-card.all.click&vd_source7a1a0bc74158c6993c7355c5490fc600 这个视频里还暗含了一些引理 1.若 AX XB 且 X 和 A,B 同阶可逆&#xff0c;那么 A 和 B 相似。原因&#xff1…

北航复试知识点总结

2024.2.25 住行 报道+机试+两天面试=4天 面试流程 (每个人大概20min,早一点到考场!) 形式:5位老师(一记录,四提问) 老师 陆峰 办公地址:北京航空航天大学新主楼H1033 电子邮箱: lufeng@buaa.edu.cn 个人主页:http://shi.buaa.edu.cn/lufeng/ 面试礼仪 于无形中…

编曲学习:高叠和弦 挂留和弦 和弦实战应用

高叠和弦 挂留和弦 和弦实战应用小鹅通-专注内容付费的技术服务商https://app8epdhy0u9502.pc.xiaoe-tech.com/live_pc/l_65d4826fe4b04c10a1310517?course_id=course_2XLKtQnQx9GrQHac7OPmHD9tqbv 七和弦 以三和弦举例,三和弦上面叠一个三度的音,就变成了七和弦。 从下到…

Spring Boot利用Kaptcha生成验证码

生成验证码 我们在登录或注册某个网站的时候&#xff0c;会需要我们输入验证码&#xff0c;才能登录注册&#xff0c;那么如何生成验证码呢&#xff1f;其实&#xff0c;生成验证码我们可以用Java Swing在后台内存里的区域画一个出来&#xff0c;但是非常麻烦&#xff0c;所以…

WIFI EEPROM 简略分析-MT7628 EEPROM ANALYSIS

经常做WIFI的同学都了解,硬件设计完成后经过射频的测试满足设计要求后,在量产以及生产中都需要对WIFI的射频需要校准,保证产品射频输出功率的一致性。 在开发阶段就必须需要了解WIFI的EEPROM都是一些什么参数,一般在硬件开发阶段会拿到芯片厂家都SDK,里面都包含对EEPROM的…

用什么软件制作电子杂志

想要制作高大上的电子杂志&#xff1f;别再烦恼啦&#xff01;今天给大家推荐一款超级实用的软件&#xff0c;让你轻松制作出专业水准的电子杂志&#xff01; 这款软件功能强大&#xff0c;操作简单&#xff0c;适合所有对设计感兴趣的小伙伴们。无论是新手还是专业设计师&…

代码随想录算法训练营第二十五天 | 216.组合总和III,17.电话号码的字母组合 [回溯篇]

代码随想录算法训练营第二十五天 LeetCode 216.组合总和III题目描述思路参考代码总结 LeetCode 17.电话号码的字母组合题目描述思路参考代码 LeetCode 216.组合总和III 题目链接&#xff1a;216.组合总和III 文章讲解&#xff1a;代码随想录#216.组合总和III 视频讲解&#xff…

javascript监听浏览器离开、进入行为

document.addEventListener(visibilitychange, () > {if (document.visibilityState hidden) {alert(离开)}if (document.visibilityState visible) {alert(进入)}}) visibilitychange是浏览器新添加的一个事件&#xff0c;当其选项卡的内容变得可见或被隐藏时&#xff0…

React组件通讯

组件通讯 组件是一个独立的单元&#xff0c;默认情况下组件只能自己使用自己的数据。在组件化过程中&#xff0c;我们将一个完整的功能拆分成多个组件&#xff0c;便于更好的完成整个应用的功能。 Props 组件本来是封闭的&#xff0c;要接受外部数据应该可以通过Props来实现…

opencv图像处理

// 提取路口轮廓集合&#xff08;每个路口的轮廓为一系列点集&#xff09; std::vector<std::vector<cv::Point>> node_contours; std::vector<cv::Vec4i> node_hierarchy;保存轮廓的层次关系// 只提取外轮廓 轮廓近似方法&#xff1a;水平垂直对角线只保留端…

CSP-202209-3-防疫大数据

CSP-202209-3-防疫大数据 解题思路 一、数据结构定义 对于大模拟的题&#xff0c;合适的数据结构选择十分重要&#xff0c;正确的数据结构选择能够有效的提升解题效率 // 漫游消息结构体 struct RoamingData {int date, user, region; };vector<RoamingData> roamin…

C#与VisionPro联合开发——TCP/IP通信

TCP/IP&#xff08;传输控制协议/互联网协议&#xff09;是一组用于在网络上进行通信的通信协议。它是互联网和许多局域网的基础&#xff0c;为计算机之间的数据传输提供了可靠性、有序性和错误检测。在软件开发中&#xff0c;TCP/IP 通信通常用于实现网络应用程序之间的数据交…