操作之前,面要先找一个大的U盘(根据所要配置哪些练习环境而定)制作U盘引导安装工具,我这里准备一个128G的U盘。另外需要从红帽的相关网装上下载如下包:
* RHCIfoundation-RHEL7-*.icmf (manifest file) * RHEL-7.x-*-Server-x86_64-dvd1.iso (RHEL 7.x DVD) * foundation-config-7.x-*.rpm (student/instructor RPM) * foundation0-config-7.x-*.rpm (instructor RPM) * redhat-survey-7*.rpm (survey RPM) * rhci-foundation-7.x-*.iso (RHCI CD-ROM ISO) * rht-usb-7.x-*.py (USB creator script) * ClassroomSetup-7.x-*.txt (first day instructions) * ClassPrep-7.x-*.txt (this document)
一、U盘引导安装的制作
1、文件准备
首先找一台LINUX主机,将所有需要安装的程序需要的虚拟机文件、ISO文件、ICMF文件等收集好,并保存到一个目录里,如下:
我将所有的保存在了/content目录下,然后插入U盘(不用挂载),fdisk -l 查看能识别就行。
2、格式化U盘为ext4
通过如下命令格式化U盘为ext4格式:
# partprobe /dev/sdb # mkfs.ext4 /dev/sdb1
上面这步注意,你U盘显示的分区名是什么就写什么,很多U盘识别的是/dev/sdb4,这里就mkfs.ext4 /dev/sdb4 。
创建/root/.icrm/config.yml 文件,并在该文件里写下如下内容:
--- repository: /root/.icrm/repository repository:/content
注意,不要忘了上面的横线。
3、rht-usb格式化U盘
使用上面下载的rht-usb的python脚本格式U盘,如下:
[root@foundation0 content]# rht-usb-xxxx.py usbformat /dev/sdb1
后面的XXXX是你下载时对应的版本。执行过程中会有Confirm reformatting /dev/sdb1的提示,按y 确认。
二、环境安装
第一个安装的是RHCI 相关的镜像和配置,还是使用rht-usb.py脚本(这里我将脚本重命名了rht-usb,后面都是这样表示),如下:
# rht-usb usbadd RHCIfoundation-RHEL71-3.r31619-ILT-7-en_US.icmf
其中icmf 是一个配置文件,安装时会通过该文件找到与该课程相关的其他包和文件。该文件可以直接通过vim 等文本查看命令打开,我这里只取该文件的一部分给大家看下:
[root@foundation0 manifests]# pwd /content/manifests [root@foundation0 manifests]# more RHCIfoundation-RHEL71-3.r31619-ILT-7-en_US.icmf --- manifest version: 1 curriculum: name: RHCIfoundation release: 3.r31619 description: RHCI foundation Hypervisor Layer Files technology: RHEL71 modality: [ ILT ] generation: 7 locale: [ en_US ] publish date: 2015-06-02 16:05:38-04:00 publisher: rlocke artifacts: - filename: rhel-server-7.1-x86_64-dvd.iso type: content content type: iso target directory: rhel7.1/x86_64/isos final name: rhel7.1/x86_64/dvd usage: [ classroom ] checksum: 370662c78e36528bbaf3f2b901c29d6f - filename: foundation-config-7.1-3.r31619.noarch.rpm type: content content type: file target directory: rhel7.1/x86_64/extras/Packages usage: [ classroom ] checksum: 190355331d12cf245e83b90abfcca9a5 ……………………省略
写入完成后,我们再以同样的方法通过icmf文件写入其他课程所需要的文件,如下:
# rht-usb usbadd RH442-RHEL70-2.r29766-ILT-7-en_US.icmf
比如下,我这里有以下相关红帽的课程环境,就将如下对应的icmf 全部按上面的方法执行一遍:
所有写完以后,U盘制作就完成了。
三、主机安装部署
在需要安装环境的服务器或pc 插上U盘,选择U盘启动 ---这里实际上也可以能过rhci-foundation-xx.iso文件引导安装的。
在boot后面,我们输入“ f0 课程代码 回车 ” 就会开始安装该课程的环境。安装过程和redhat os 安装差不多,仅需要时区和分区项做下选择,即可完成安装。
由于上面的安装我们仅仅部署了其中一门课程的环境,要想将U盘上所有课程的环境部署到一台主机上,也可以的,可以在安装完成进入系统后再安装其他课程,如下:
注意,U盘插在主机上后,不要挂载,挂载安装课程时会报错。想要安装哪一门,支接执行rht-usb courseusb 课程代码就行了。
四、rht相关指令
上面我们安装的foundation0即是教师机,也是一台学生机。局域网内的其他主机可以通过pxe安装相应的学生练习机。同时红帽本身为了方便练习、难证等,也提供了一套rht相关的指令,非常方便,如下:
1、rht-verify-f0
该命令可以验证foundation0安装的是否有问题:
[root@foundation0 ~]# rht-verify-f0 Hardware report (compare to Hardware Requirements for course) CPU Cores: 4 CPU Flags: nx lm vmx ept vpid Total RAM: 16G Total disk: 968G Virtualization enabled Confirm hardware requirements ............. PASS Test for required hostname ................ PASS Test for required packages ................ PASS Slave interfaces of br0: enp3s0 vnet0 Warning: br0 slave (enp3s0) speed detected is 100Mb/s Warning: None of br0 slaves are GigE Slave interfaces of br1: vnet1 Confirm current network settings .......... PASS Test for active services and sockets ...... PASS Warning: only foundation manifest found CL220-CF31-1.r30561-ILT-7-en_US.icmf CL280-OSE21-1.r27797-ILT-7-en_US.icmf DO280-OSE30-1.r34582-ILT-7-en_US.icmf RH236-RHSTOR30-4.r34927-ILT-7-en_US.icmf RH254-RHEL70-2.r31095-ILT-7-en_US.icmf RH270-RHEL71-1.r30566-ILT-7-en_US.icmf RH318-RHEV35-1.r31286-ILT-7-en_US.icmf RH436-RHEL71-2.r34386-ILT-7-en_US.icmf RH442-RHEL70-2.r29766-ILT-7-en_US.icmf RHCIfoundation-RHEL71-3.r31619-ILT-7-en_US.icmf Confirm existence of manifests ............ PASS keyboard --vckeymap=us --xlayouts='us' lang en_US.UTF-8 timezone Asia/Shanghai --isUtc Confirm locale settings ................... PASS Current local time: Tue Apr 19 22:31:59 CST 2016 Correct as needed the local time .......... PASS foundation0-ose-3.0-1.r34582.x86_64 foundation0-rhstor-3.0-1.r30734.x86_64 foundation0-rh442-7.0-1.r29766.x86_64 foundation0-atomic-7.1-1.r30566.x86_64 foundation0-rhev-3.5-1.r31286.x86_64 foundation0-rhelha-7.1-1.r34386.x86_64 foundation0-cfme-3.1-1.r30535.x86_64 Test for course packages .................. PASS RHT_VENUE=ilt RHT_ENROLLMENT=0 RHT_ROLE=foundation RHT_COURSE=rh270 RHT_TITLE="Managing Containers with Red Hat Enterprise Linux Atomic Host" RHT_VMS="workstation servera serverb serverc serverd " RHT_MAXSTATIONS=20 RHT_VM0="classroom " RHT_HVMS="" RHT_VMTREE=atomic7.1/x86_64 Confirm course settings ................... PASS *** SUMMARY: [PASS=10] [WARNING=2] [FAIL=0] ***
2、rht-setcourse
使用该命令可以方便的在多个环境之间切换,如下:
[root@foundation0 ~]# rht-setcourse rh270 Course set to rh270
上面就将练习环境切到了docker这门课程了。
3、rht-pushcourse
给学习机推送练习环境(实际上就是推送对应的虚拟机)
[root@foundation0 ~]# rht-pushcourse 7 Preparing to push to foundation7.ilt.example.com...
上面是给7号机推送。
4、rht-vmctl
练习时学生机经常可能会把本机的练习环境里的东西搞的不对,可以通过该命令将练习环境重置。
[root@foundation0 ~]# rht-vmctl fullreset servera [root@foundation0 ~]# rht-vmctl fullreset all
可以重置其中一台,也可以重置所有的。原理说白了就是从教师机上wget qcow2的虚拟机文件,练习环境底层都是基于通过kvm虚拟机的。
大牛求RH270、RH436、RH442的RH436-RHEL71-2.r34386-ILT-7-en_US.icmf、RH442-RHEL70-2.r29766-ILT-7-en_US.icmf、RH270-RHEL71-1.r30566-ILT-7-en_US.icmf的相关材料下载!
where can I get these files from ? but you need a licences.
you can get it from redhat site.