RHCA回忆录—开篇:RH358
IT民工金鱼哥忆往事,考取RHCA认证是一段值得回忆的历程。犹记得当时面对全英的教材,由于阅读的不习惯和单词量的不够,所以真的花了不少时间去适应。2018年时学的第一门CA:DO407(课程为ansible,现在变成RHCE认证的内容)时,我的课本还有保留着各种查单词的痕迹。现在想想也的确感谢当年的锻炼,让自己不断适应去阅读英文资料,让自己现在不害怕看英文资料(而且现在各种翻译工具,所以有什么好害怕呢?),而且在日常工作中,也不断积累了不少的词句阅读量,这些都成为宝贵的财富。
想起这些,觉得还是弄一个专栏,把一些觉得实际点的课程内容写到专栏里(会包含当年授课时的一些笔记和现在写下的各种感受与建议),希望能让大家学习一些技能的同时,也能从金鱼哥的分享中有所得。
RH358课程介绍
官网介绍:https://www.redhat.com/zh/services/training/rh358-red-hat-services-management-automation
以下摘自官网介绍:
红帽服务管理与自动化(RH358)
课程概述
学习如何配置、管理和扩展数据中心使用的重要服务
红帽服务管理与自动化(RH358)专为如下 IT 专业人员设计:具备一些管理 Linux系统的经验,希望进一步了解如何管理和部署红帽企业 Linux 中附带的在现代 IT 数据中心中特别重要的网络服务。您将学习如何手动安装、配置和管理这些服务的基本配置,然后使用红帽 Ansible 引擎以可扩展且可重复的方式自动完成您的工作。
本课程基于红帽 Ansible 引擎 2.9 和红帽企业 Linux 8.1。
课程概要
- 利用红帽企业 Linux 8 随附的软件提供重要的软件服务,包括 DNS(使用 Unbound 和 BIND9)、DHCP 和 DHCPv6、客户端电子邮件传输、打印服务、NFS 和 SMB 协议文件共享、SQL 数据库服务(利用 MariaDB),以及利用 Apache HTTPD、nginx、Varnish 和 HAProxy 的 Web 服务。
- 为服务器用例配置高级网络,包括设备成组。
- 使用红帽 Ansible 引擎自动完成本课程介绍的手动部署与配置任务。
课程培训对象
Linux 系统管理员、站点可靠性工程师和其他 IT 专业人员,需具备一些 Ansible 经验,并且有兴趣了解如何管理和自动化执行红帽企业 Linux 8 所附重要网络服务的部署、配置和运维。
课程前提条件
拥有红帽企业 Linux 8 红帽认证工程师(RHCE)认证,或者具备 Linux 系统管理和 Ansible 自动化方面的同等技能。
课程大纲
配置链路聚合
通过在多个网络接口之间配置 Linux 网络成组,改进服务器网络连接的冗余或吞吐量。
管理 DNS 和 DNS 服务器
探讨 DNS 服务运维、DNS 问题故障排除,以及如何配置服务器以充当 DNS 缓存名称服务器或权威名称服务器。
管理 DHCP 和 IP 地址分配
探讨和配置用于 IPv4 和 IPv6 地址分配的服务,包括 DHCP、DHCPv6 和 SLAAC。
管理打印机和打印文件
配置系统以打印到支持 IPP Everywhere 的打印机,以及管理现有的打印队列。
配置电子邮件传输
讨论电子邮件服务器的运作方式,然后配置服务器以使用相关工具和 Postfix 来通过出站邮件中继发送电子邮件消息。
配置 MariaDB SQL 数据库
讨论基于 SQL 的关系数据库的基本运作,执行基本 SQL 查询来进行故障排除,并且能够设置简单的 MariaDB 数据库服务。
配置 Web 服务器
从 Apache HTTPD 或 Nginx Web 服务器提供 Web 内容,然后为其配置虚拟主机和基于 TLS 的加密。
优化 Web 服务器流量
使用 Varnish 来缓存交付的静态内容,并使用 HAProxy 来终止 TLS 连接并均衡服务器间的负载,从而改进 Web 服务器的性能。
提供基于文件的网络存储
利用 NFS 和 SMB 协议,向客户端提供简单的基于文件型网络共享。
访问基于块的网络存储
在服务器上配置 iSCSI Initiator,以访问由网络存储阵列或 Ceph 存储集群提供的基于块型存储设备。
# 以上都是关于这门课程的内容,后面的章节排列都会以此大纲来进行。
课堂环境介绍
RHCA的学习,往往离不开官方配套的学习环境,IT民工金鱼哥当年成为官方授权讲师(RHCI)前,在兼职的时候就学会了通过下载官方环境材料制作课堂环境。
以下介绍官方环境的拓扑:
bastion的主要功能是充当连接学生机器(workstation)和教室网络(classroom)的路由器。如果宕机,其他机器将只能访问个别网络上的系统,专业点讲,bastion不在,就只能使用二层网络,workstation、servera-d只能进行内部访问,若想要走3层(其实就是访问classroom拿资料支持各种),就需要确保bastion机器正确运行。
有两个服务器web网址: content.example.com 和 materials.example.com,包含练习的软件和实验材料,这些都是由classroom.example.com虚拟机提供。如果要进行实验环境,classroom和bastion应该一直运行。
这些KVM虚拟机都运行在foundation0 (简称F0)这台宿主机上。
我们学习使用都基本是把环境弄到VMware上,然后把F0整个环境放到VMware中进行使用。
配套环境常规操作:
F0宿主机密码:root/Asimov
F0普通用户密码;kiosk/redhat
1. 如果是AMD CPU,可能出现如下报错
1. 如果是AMD CPU,可能出现如下报错
MoTTY X11 proxy: Unsupported authorisation protocol
Unable to init server: Could not connect: Connection refused
qemu-system-x86_64: error: failed to set MSR 0xe1 to 0x0
qemu-system-x86_64: /build/qemu-BQ4hMP/qemu-4.2/target/i386/kvm.c:2691: kvm_buf_set_msrs: Assertion `ret == cpu->kvm_msr_buf->nmsrs' failed.
Aborted
这个是由于AMD CPU的兼容性问题,此时需要添加kvm参数,才能打开F0中的KVM虚拟机。
# 添加KVM参数
tee /etc/modprobe.d/qemu-system-x86.conf << EOF
options kvm ignore_msrs=1
EOF
# 重启Vmware的F0虚拟机
reboot
2. 重置环境顺序
2. 重置环境顺序
# 如果之前有加载过其他课程环境,请执行以下命令,把所有虚拟机关机;如无,则跳过。
rht-vmctl poweroff all
rht-vmctl poweroff classroom
# 切换课程环境命令
rht-setcourse rh358
# 切换课程环境后,进行课程环境所需虚拟机的初始化(重置)
# 必须先初始化classroom虚拟机,启动完成,再启动下一个
rht-vmctl fullreset classroom
# 然后初始化bastion虚拟机,提供软路由功能
rht-vmctl fullreset bastion
# 其余虚拟机初始化可不按顺序
# 初始化workstation虚拟机
rht-vmctl fullreset workstation
# 初始化servera虚拟机
rht-vmctl fullreset servera
# 初始化serverb虚拟机
rht-vmctl fullreset serverb
......
# 初始化(重置)只在刚切换环境时进行,后续可使用reset命令进行虚拟机重置。
3. 其余操作
3. 其余操作
# 启动虚拟机
rht-vmctl start xxx
# 查看状态
rht-vmctl status xxx
注意:rht-vmctl命令只对配套学习环境生效。
注意:rht-vmctl命令只对配套学习环境生效。
总结
总结
每门课程都有其大纲和课程内容,都可在官网进行查看。了解好课程环境,每门CA环境的拓扑都大同小异。AMD CPU运行KVM报错,需要进行内核设置。课程切换后,需要遵循一些操作顺序,否则会出错。若喜欢金鱼哥的文章,顺手点个赞。也可点个关注,因为后续会不断上干货。