由于公司最近要求部分项目上线到Azure云上,要求操作系统使用的Redhat 8.x,而且必须加固

而在Azure官网提供的镜像中,又没有Redhat,于是只有自己自定义Redhat镜像,最后加固,作为公司通用的基础镜像

于是在此记录部分重要的注意事项,及一些重要的操作过程,使用 Hyper-V 管理器准备RHEL 8 虚拟机。

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

本文假定已经从 Red Hat 网站获取 ISO 文件并将 RHEL 映像通过Hyper-V 管理器,安装到虚拟硬盘 (VHD),RHEL 安装说明,如下:

1、Azure 不支持 VHDX 格式。 Azure 仅支持固定 VHD。

可使用 Hyper-V 管理器将磁盘转换为 VHD 格式,也可以使用 convert-vhd cmdlet。

如果使用 VirtualBox,则选择“固定大小”,而不是在创建磁盘时默认动态分配选项。

2、Azure 支持 Gen1(BIOS 引导)和Gen2(UEFI 引导)虚拟机。

3、VHD 允许的最大大小为 1,023 GB

4、支持逻辑卷管理器 (LVM),该管理器可以在 Azure 虚拟机中的 OS 磁盘或数据磁盘上使用。

但是,通常建议在 OS 磁盘上使用标准分区而不是 LVM。

这种做法可以避免 LVM 名称与克隆的虚拟机冲突,尤其是当需要将操作系统磁盘附加到另一台相同的虚拟机进行故障排除时

5、对装载通用磁盘格式 (UDF) 文件系统的内核支持是必需的。

在 Azure 上首次启动时,附加到来宾的 UDF 格式媒体会将预配配置传递到 Linux 虚拟机。

Azure Linux 代理必须能够装载 UDF 文件系统以读取其配置并预配虚拟机,如果没有此支持,预配将失败!

6、不要在操作系统磁盘上配置交换分区

7、Azure 上的所有 VHD 必须已将虚拟大小调整为 1MB。 从原始磁盘转换为 VHD 时,必须确保在转换前原始磁盘大小是 1MB 的倍数。

+++RHEL 8(使用 Hyper-V 管理器)过程++++++++++++++++++++++++++++++++++++++++++++++++++++

详细的过程,可以参考如下URL:

https://docs.microsoft.com/zh-cn/azure/virtual-machines/linux/redhat-create-upload-vhd#rhel-8-using-hyper-v-manager

1、在 Hyper-V 管理器中安装完Redhat 8.x 操作系统后,通过控制台登录上(也可以配置上网络,ssh连接上)

2、通过运行以下命令,确保网络管理器服务会在引导时启动:

sudo systemctl enable NetworkManager.service

3、将网络接口配置为在启动时自动启动,并使用 DHCP

nmcli con mod eth0 connection.autoconnect yes ipv4.method auto

4、注册 Red Hat 订阅,以通过运行以下命令来启用来自 RHEL 存储库中的包的安装(也可以后续在Azure上操作):

# sudo subscription-manager register --auto-attach --username=XXX --password=XXX
# 补充:取消注册订阅,可以运行以下命令
# sudo subscription-manager unregister

5、在 grub 配置中修改内核引导行,使其包含 Azure 的其他内核参数并启用串行控制台。

# 删除当前的 GRUB 参数:
grub2-editenv - unset kernelopts # 在文本编辑器中编辑 /etc/default/grub,并添加以下参数
# 遇到相同的选项,可以删除,只保留如下3行即可,笔者把lvm相关的都删除了,可以正常启动的
GRUB_CMDLINE_LINUX="rootdelay=300 console=tty1 console=ttyS0,115200n8 earlyprintk=ttyS0,115200 earlyprintk=ttyS0 net.ifnames=0"
GRUB_TERMINAL_OUTPUT="serial console"
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"

6、完成 /etc/default/grub 编辑后,运行以下命令以重新生成 grub 配置

sudo grub2-mkconfig -o /boot/grub2/grub.cfg

# 对于启用了 UEFI 的 VM,请运行以下命令(笔者因为没有使用到,因此使用不到如下命令):
# sudo grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg

7、请确保 SSH 服务器已安装且已配置为在引导时启动(默认采用此配置)。 修改 /etc/ssh/sshd_config 以包含以下行:

ClientAliveInterval 180

最后,检查一下网卡配置文件,删除UUID或者其他选项,保障sshd服务是开机自动启动的,然后重启一下,保障系统能正常重新启动

当然还有一些其他步骤,这里先不在 Hyper-V 管理器 中操作了

8、重启没有问题,就关机,通过 Hyper-V 管理器将虚拟机磁盘格式转换为VHD,最后上传到Azure下的Blob存储中

9、使用Blob中的VDH磁盘文件,创建托管磁盘,最后再使用这个磁盘创建一个VM

10、然后根据官网文档的步骤做完善,最后生成映像,通过对映像创建的虚拟机,进行OS hardening

当然,这里笔者在本应该在Hyper-V 管理器上的操作,缩减了很多(只做了一些相对重要的操作),

然后放到Azure上继续完善,主要是为了快速的实现Hyper-V到Azure云,可以避免一些错误,节省时间

尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/15034862.html

 

为Azure-云准备一个基于Red Hat 8.x 的虚拟机镜像的更多相关文章

  1. 红帽 Red Hat Linux相关产品iso镜像下载【百度云】【更新7.6】

    不为什么,就为了方便搜索,特把红帽EL 5.EL6.EL7 的各版本整理一下,共享出来.原文链接正式发布 7.6 :RedHat Enterprise Server 7.6 for x86_64:rh ...

  2. memcache安装 基于Red Hat 7.4

    Linux版本为 Red Hat 7.4 一.安装 1.下载:http://memcached.org/downloads 解压: tar -xzvf memcached-1.5.3.tar.gz 得 ...

  3. 红帽 Red Hat Linux相关产品iso镜像下载【百度云】(转载)

    不为什么,就为了方便搜索,特把红帽EL 5.EL6.EL7 的各版本整理一下,共享出来.正式发布 6.9 :RedHat Enterprise Server 6.9 for x86_64:rhel-s ...

  4. 红帽 Red Hat Linux相关产品iso镜像下载【百度云】【更新7.2】

    RedHat Enterprise Server 6.7 for i386 Boot Disk:rhel-server-6.7-i386-boot.iso SHA-256 Checksum: 798d ...

  5. (转)红帽 Red Hat Linux相关产品iso镜像下载【百度云】【更新6.7 Boot Disk】

    不为什么,就为了方便搜索,特把红帽EL 5.EL6 的各版本整理一下,共享出来. RedHat Enterprise Server 6.7 for i386 Boot Disk:rhel-server ...

  6. [转]Red Hat Linux相关产品iso镜像下载【百度云】

    超强汇总!献上大佬链接:http://www.linuxfly.org/post/659/ 还有一些可用链接: 下面的直接复制到迅雷下载,链接是打不开的. RHEL 5.4 ISO下载http://r ...

  7. ORACLE 11G 单实例 磁盘文件系统 DG 归档日志删除脚本 基于RED HAT LINUX 5.3 X86 64BIT

    近期做个DG的归档日志删除, [oracle@.local logs]crontab -l * 8 * * * sh /home/oracle/dbscripts/del_arc.sh 该脚本分别调用 ...

  8. docker19.03制作一个基于centos8的带有nfs4服务的镜像

    一,下载centos的image 1,下载centos最新image [root@localhost ~]# docker pull centos 2,查看是否成功下载到本地image [root@l ...

  9. Red Hat Linux相关产品iso镜像下载

    Linux系统各发行版镜像下载(持续更新) http://www.linuxfly.org/post/659/ http://www.linuxidc.com/Linux/2007-09/7399.h ...

随机推荐

  1. 平衡树——splay 一

    splay 一种平衡树,同时也是二叉排序树,与treap不同,它不需要维护堆的性质,它由Daniel Sleator和Robert Tarjan(没错,tarjan,又是他)创造,伸展树是一种自调整二 ...

  2. 第十一天python3 递归函数

    递归Recursion 函数直接或者间接调用自身就是递归: 递归需要有边界条件,递归前进段.递归返回段: 递归一定要有边界条件: 当边界条件不满足的时候,递归前进: 当边界条件满足的时候,递归返回: ...

  3. 有一种密码学专用语言叫做ASN.1

    目录 简介 ASN.1的例子 ASN.1中的内置类型 ASN.1中的限制语法 总结 简介 ASN.1是一种跨平台的数据序列化的接口描述语言.可能很多人没有听说过ASN.1, 但是相信有过跨平台编程经验 ...

  4. python第三方模块与内置模块

    目录 openpyxl模块 random随机模块 hashlib加密模块 subprocess模块 logging模块 openpyxl模块 1.读取:openpyxl不擅长读数据 所以有一些模块优化 ...

  5. 基于Vue.js2.6结合h5来实现视频播放画中画技术(Picture-in-Picture)

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_125 在开发基于vue.js的在线视频教育平台的时候,我们会注意一个小问题,就是如果用户在观看播放视频的同时,也会往下拖动窗口浏览 ...

  6. 4.直方图介绍和使用|MySQL索引学习

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 目录 一.导读 二.步骤 2.1 SQL语句 2.2 直方图案例 2.3 查看直方图统计信息 2.3 直方图分类 2.4 ...

  7. MySQL主从复制原理及搭建过程

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 复制概述 复制即把一台服务器上的数据通过某种手段同步到另外一台或多台从服务器上,使得从服务器在数据上与主服务器保持一致. ...

  8. 设置Windows Server 2022、Win10、Win11自动登录的简单方法-OK

    这里介绍自己从使用 Windows Server 2003 到 Windows Server 2022 一直都在使用的自动登录系统的方法,屡试不爽.网上讨论的方法太繁琐,所以共享出来,供大家参考.该方 ...

  9. 《笨办法学Python3 》入坑必备,并不是真笨学!!!

    <笨办法学Python3 >免费下载地址 内容简介 · · · · · · 本书是一本Python入门书籍,适合对计算机了解不多,没有学过编程,但对编程感兴趣的读者学习使用.这本书以习题的 ...

  10. 在Kubernetes上部署k6的详细步骤

    k6介绍 k6是一款使用go语言编写的开源测试工具,支持用户编写测试脚本,解决了JMeter不易代码化的缺点.它的主要特点有 提供了友好的 CLI 工具 使用 JavaScript 代码编写测试用例 ...