将VMware虚拟化环境下中的Linux模板导入到Smartx KVM环境

2023-10-08 02:20

本文主要是介绍将VMware虚拟化环境下中的Linux模板导入到Smartx KVM环境,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在实际运维工作中,新采购的服务器预装的总是最新的操作系统,新开始的应用项目很多都是在其他单位已经开发过类似的产品或功能,如果不做要求会总是默认使用他们已经部署过的用老版本操作系统。一直这么做一是不利于公司统一管理操作系统基线;二是新上线新开发的系统带病成长;近期我们经过思考沟通,准备将Red Hat Enterprise Linux 8.4纳入我们的操作系统基线。于是,我们在实际使用中可以支持并接受的操作系统有了3个版本:Red Hat Enterprise Linux 7.1、7.9、8.4。为什么是这3个版本,保哥不在这里过多的讨论。由于我们VMware虚拟化的环境较多,我们先完成了模板制作。本文档主要介绍了将VMware虚拟化环境中的Linux模板导入到Smartx KVM环境。

一、将VMware中的模板导入到Smartx

单纯将VMware中的模板或者虚拟机导入到Smartx并不困难,有现成的工具。这篇文档的重点是导入后的初始化操作。

(一)模板转换为虚拟机

将VMware的模板,右键转换为虚拟机,此处就没有截图了,基本操作。

(二)将VMware虚拟机导入Smartx

1.创建任务

登录Smartx迁移工具,选择”创建人物”按钮,开始创建一个迁移任务 。

2.选择源端和目标端

在创建迁移任务页面,选择”源端”,也就是vCenter地址。选择”vCenter数据中心”,”目标端”肯定是选择Smartx集群了。

3.选择待迁移的虚拟机

在创建迁移任务的页面,选择源端和目标端后,进入选择待迁移的虚拟机步骤。搜索需要迁移的虚拟机名称并确认选择。

4.设置虚拟网络

在选择待迁移的虚拟机后,进入设置虚拟网络步骤,这里显示出的是Smartx上的虚拟网络,虚拟主机迁移后将使用这里选择的网络进行通信。

5.自定义虚拟机配置项

在设置虚拟网络后,在自定义虚拟机配置项中选择在Smartx上的存储策略,及是否保留MAC地址、是否进行数据校验、是否自动开机。

二、初始化虚拟机

登录Smartx管理控制台,可以是flsheye,也可以是CloudTower。保哥这里选择了CloudTower。

(一)安装vmtools

1.挂载vmtools光盘

登录到CloudTower后,在基础设施中,选择”虚拟化”,”虚拟机”,找到迁移完成后的虚拟机,点击迁移后的虚拟机,选择下拉菜单,选择”安装虚拟机工具”。

2.挂载CD-ROM

如果第一步没有成功,可能造成的原因是没有空的CD-ROM,如果第一步成功,此步骤可以不做。

选择”编辑虚拟盘”,挂载CD-RMO。

执行完毕挂载CD-ROM后,再次执行第一步骤。

3.安装vmtools

使用”打开终端”登录虚拟机操作系统后,需要挂载CD-ROM,执行SMTX_VM_TOOLS_INSTALL.sh安装。

 
  1. #mount /dev/sr0 /mnt
  2. #cd /mnt
  3. #./SMTX_VM_TOOLS_INSTALL.sh

4.安装并配置cloud-init工具

执⾏以下命令安装 cloud-init

 
  1. #yum install -y cloud-init
  2. #systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service

按照一下内容配置cloud-init

 
  1. # cat /etc/cloud/cloud.cfg
  2. users:
  3. - default
  4. #修改 diable_root, ssh_pwauth, chapasswd, datasource_list, datasource ==>
  5. disable_root: false
  6. ssh_pwauth: true
  7. chpasswd:
  8. expire: false
  9. datasource_list: [ConfigDrive, None]
  10. datasource:
  11. ConfigDrive:
  12. dsmode: local
  13. #<==修改到此结束
  14. mount_default_fields: [~, ~, 'auto', 'defaults,nofail,x-systemd.requires=cloud-init.service', '0', '2']
  15. resize_rootfs_tmp: /dev
  16. ssh_deletekeys: 1
  17. ssh_genkeytypes: ~
  18. syslog_fix_perms: ~
  19. disable_vmware_customization: false
  20. cloud_init_modules:
  21. - disk_setup
  22. - migrator
  23. - bootcmd
  24. - write-files
  25. #注释掉以下两个项目
  26. # - growpart
  27. # - resizefs
  28. - set_hostname
  29. - update_hostname
  30. - update_etc_hosts
  31. - rsyslog
  32. - users-groups
  33. - ssh
  34. cloud_config_modules:
  35. - mounts
  36. - locale
  37. - set-passwords
  38. - rh_subscription
  39. - yum-add-repo
  40. - package-update-upgrade-install
  41. - timezone
  42. - puppet
  43. - chef
  44. - salt-minion
  45. - mcollective
  46. - disable-ec2-metadata
  47. - runcmd
  48. cloud_final_modules:
  49. - rightscale_userdata
  50. - scripts-per-once
  51. - scripts-per-boot
  52. - scripts-per-instance
  53. - scripts-user
  54. - ssh-authkey-fingerprints
  55. - keys-to-console
  56. - phone-home
  57. - final-message
  58. - power-state-change
  59. system_info:
  60. #修改default_user
  61. default_user:
  62. name: root
  63. lock_passwd: false
  64. gecos: Cloud User
  65. groups: [adm, systemd-journal]
  66. sudo: ["ALL=(ALL) NOPASSWD:ALL"]
  67. shell: /bin/bash
  68. distro: rhel
  69. paths:
  70. cloud_dir: /var/lib/cloud
  71. templates_dir: /etc/cloud/templates
  72. ssh_svcname: sshd
  73. # vim:syntax=yaml

5.配置NetworkManager

配置NetworkManager开机启动,如果不开机启动cloud-init自定义IP地址不生效。

 
  1. #Systemctl enable NetmaskManager

6.配置dracut

配置dracut.conf文件,用于支持virtio驱动。

 
  1. # cat /etc/dracut.conf
  2. # PUT YOUR CONFIG IN separate files
  3. # in /etc/dracut.conf.d named "<name>.conf"
  4. # SEE man dracut.conf(5) for options
  5. # cat /etc/dracut.conf.d/disk.conf
  6. add_drivers+="virtio_blk virtio_scsi virtio_net virtio_pci virtio_ring virtio"
  7. # dracut -f /boot/initramfs-4.18.0-305.el8.x86_64.img

7.编辑虚拟盘

默认从VMware环境中迁移的虚拟机,如果不调整虚拟盘的总线驱动程序为IDE,会无法正常启动。配置dracut后,调整虚拟盘总线为”VIRTIO”,启动虚拟机,初始化工作完成。

三、总结

此文档”将VMware虚拟化环境下中的Linux模板导入到Smartx KVM环境”到此结束,保哥的实战宝典,有需要请联系我。

这篇关于将VMware虚拟化环境下中的Linux模板导入到Smartx KVM环境的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/162050

相关文章

Linux线程同步/互斥过程详解

《Linux线程同步/互斥过程详解》文章讲解多线程并发访问导致竞态条件,需通过互斥锁、原子操作和条件变量实现线程安全与同步,分析死锁条件及避免方法,并介绍RAII封装技术提升资源管理效率... 目录01. 资源共享问题1.1 多线程并发访问1.2 临界区与临界资源1.3 锁的引入02. 多线程案例2.1 为

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Oracle数据库定时备份脚本方式(Linux)

《Oracle数据库定时备份脚本方式(Linux)》文章介绍Oracle数据库自动备份方案,包含主机备份传输与备机解压导入流程,强调需提前全量删除原库数据避免报错,并需配置无密传输、定时任务及验证脚本... 目录说明主机脚本备机上自动导库脚本整个自动备份oracle数据库的过程(建议全程用root用户)总结

Linux如何查看文件权限的命令

《Linux如何查看文件权限的命令》Linux中使用ls-R命令递归查看指定目录及子目录下所有文件和文件夹的权限信息,以列表形式展示权限位、所有者、组等详细内容... 目录linux China编程查看文件权限命令输出结果示例这里是查看tomcat文件夹总结Linux 查看文件权限命令ls -l 文件或文件夹

idea的终端(Terminal)cmd的命令换成linux的命令详解

《idea的终端(Terminal)cmd的命令换成linux的命令详解》本文介绍IDEA配置Git的步骤:安装Git、修改终端设置并重启IDEA,强调顺序,作为个人经验分享,希望提供参考并支持脚本之... 目录一编程、设置前二、前置条件三、android设置四、设置后总结一、php设置前二、前置条件

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

Linux下在线安装启动VNC教程

《Linux下在线安装启动VNC教程》本文指导在CentOS7上在线安装VNC,包含安装、配置密码、启动/停止、清理重启步骤及注意事项,强调需安装VNC桌面以避免黑屏,并解决端口冲突和目录权限问题... 目录描述安装VNC安装 VNC 桌面可能遇到的问题总结描js述linux中的VNC就类似于Window

linux下shell脚本启动jar包实现过程

《linux下shell脚本启动jar包实现过程》确保APP_NAME和LOG_FILE位于目录内,首次启动前需手动创建log文件夹,否则报错,此为个人经验,供参考,欢迎支持脚本之家... 目录linux下shell脚本启动jar包样例1样例2总结linux下shell脚本启动jar包样例1#!/bin

Go语言编译环境设置教程

《Go语言编译环境设置教程》Go语言支持高并发(goroutine)、自动垃圾回收,编译为跨平台二进制文件,云原生兼容且社区活跃,开发便捷,内置测试与vet工具辅助检测错误,依赖模块化管理,提升开发效... 目录Go语言优势下载 Go  配置编译环境配置 GOPROXYIDE 设置(VS Code)一些基本