RHCA之路---EX280(5)
RHCA之路—EX280(5)
1. 题目

Using the example files from the wordpress directory under
http://materials.example.com/exam280/wordpress create a WordPress application in the farm project
For permanent storage use the NFS shares /exports/wordpress and /exports/mysql from services.lab.example.com.
Use the files from http://materials.example.com/exam280/wordpress for the volumes
For the WordPress pod, use the Docker image from
http://materials.example.com/exam280/wordpress.tar
(Note: it is normal if the WordPress pod initially restarts a couple of times due to permaission issues)
For the MySQL pod use the Docker image rhscl/mysql-57-rhel7
Once deployed,the application must be reachable at the following address:
http://blog.apps.lab.example.com
Finally, complete the WordPress installation by setting ayumi as the admin user with password redhat and ayumi@master.lab.example.com for the email address
Set the blog name to EX280 Blog
Create your first post with title faber est quisque fortunae suae.
The text in the post does not matter
2. 解题
2.1 切换项目
切记一定不要漏这步
[root@master php-helloworld]# oc project farm
Now using project "farm" on server "https://master.lab.example.com".
[root@master php-helloworld]# mkdir ~/farm
[root@master php-helloworld]# cd ~/farm
[root@master farm]# oc projects
You have access to the following projects and can switch between them with 'oc project <projectname>':defaultditto* farmkube-publickube-service-catalogkube-systemloggingmanagement-infraopenshiftopenshift-ansible-service-brokeropenshift-infraopenshift-nodeopenshift-template-service-brokeropenshift-web-consoleromesamplesshrimpUsing project "farm" on server "https://master.lab.example.com".
2.2 下载模板文件
wget http://materials.example.com/exam280/wordpress/pv.yaml
wget http://materials.example.com/exam280/wordpress/pvc.yaml
wget http://materials.example.com/exam280/wordpress/pod-mysql.yaml
wget http://materials.example.com/exam280/wordpress/pod-wordpress.yaml
wget http://materials.example.com/exam280/wordpress/service-mysql.yaml
wget http://materials.example.com/exam280/wordpress/service-wp.yaml
cp pv.yaml mypv.yaml
cp pvc.yaml mypvc.yaml
cp pv.yaml wppv.yaml
cp pvc.yaml wppvc.yaml
2.3 配置mysql
2.3.1 mypv.yaml
apiVersion: v1
kind: PersistentVolume
metadata:name: mypv
spec:capacity:storage: 3GiaccessModes:- ReadWriteOncenfs:path: /exports/mysqlserver: services.lab.example.compersistentVolumeReclaimPolicy: Recycle
2.3.2 mypvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:name: dbclaim
spec:accessModes:- ReadWriteOnceresources:requests:storage: 3Gi
2.3.3 pod-mysql.yaml
apiVersion: v1
kind: Pod
metadata:name: mysqllabels:name: mysql
spec:containers:- image: registry.lab.example.com/rhscl/mysql-57-rhel7:latestname: mysqlenv:- name: MYSQL_ROOT_PASSWORDvalue: redhat- name: MYSQL_USERvalue: tom- name: MYSQL_PASSWORDvalue: redhat- name: MYSQL_DATABASEvalue: blogports:- containerPort: 3306name: mysqlvolumeMounts:- name: mysql-persistent-storagemountPath: /var/lib/mysql/datavolumes:- name: mysql-persistent-storagepersistentVolumeClaim:claimName: dbclaim
2.3.4 service-mysql.yaml
apiVersion: v1
kind: Service
metadata:labels:name: mysqlname: mysql
spec:ports:# the port that this service should serve on- port: 3306# label keys and values that must match in order to receive traffic for this serviceselector:name: mysql
2.3.5 创建mysql
[root@master farm]# oc create -f mypv.yaml
persistentvolume "mypv" created
[root@master farm]# oc create -f mypvc.yaml
persistentvolumeclaim "dbclaim" created
[root@master farm]# oc create -f pod-mysql.yaml
pod "mysql" created
[root@master farm]# oc create -f service-mysql.yaml
service "mysql" created
2.4 配置wordpress
2.4.1 wordpress镜像准备
[root@master farm]# wget http://materials.example.com/exam280/wordpress.tar
--2023-09-04 15:49:32-- http://materials.example.com/exam280/wordpress.tar
Resolving materials.example.com (materials.example.com)... 172.25.254.254
Connecting to materials.example.com (materials.example.com)|172.25.254.254|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 419054592 (400M) [application/x-tar]
Saving to: ‘wordpress.tar’100%[===========================================================================================================>] 419,054,592 70.6MB/s in 5.7s2023-09-04 15:49:38 (70.7 MB/s) - ‘wordpress.tar’ saved [419054592/419054592][root@master farm]# docker load -i wordpress.tar
2c40c66f7667: Loading layer [==================================================>] 129.3 MB/129.3 MB
ddd6dcab19ff: Loading layer [==================================================>] 204.7 MB/204.7 MB
f0c367fa8636: Loading layer [==================================================>] 3.584 kB/3.584 kB
0fd7a67d49b3: Loading layer [==================================================>] 7.699 MB/7.699 MB
53da01089a82: Loading layer [==================================================>] 10.24 kB/10.24 kB
3d2582fdede2: Loading layer [==================================================>] 9.728 kB/9.728 kB
315db89f9acb: Loading layer [==================================================>] 4.096 kB/4.096 kB
2da371244fc1: Loading layer [==================================================>] 7.68 kB/7.68 kB
354b4ef9664b: Loading layer [==================================================>] 13.01 MB/13.01 MB
adfd7c98cdf6: Loading layer [==================================================>] 4.096 kB/4.096 kB
8747705a74d9: Loading layer [==================================================>] 33.01 MB/33.01 MB
5a151fa4136e: Loading layer [==================================================>] 11.78 kB/11.78 kB
c8c6d352c96e: Loading layer [==================================================>] 4.608 kB/4.608 kB
fed26d7fe7b9: Loading layer [==================================================>] 6.04 MB/6.04 MB
4214911d5945: Loading layer [==================================================>] 4.608 kB/4.608 kB
6671cb9eb6b3: Loading layer [==================================================>] 7.168 kB/7.168 kB
562dd11ed871: Loading layer [==================================================>] 25.12 MB/25.12 MB
53e16fa1f104: Loading layer [==================================================>] 10.24 kB/10.24 kB
Loaded image: 192.168.122.250:5000/openshift/wordpress:latest
[root@master farm]# docker tag 192.168.122.250:5000/openshift/wordpress:latest registry.lab.example.com/openshift/wordpress:latest
[root@master farm]# docker push registry.lab.example.com/openshift/wordpress:latest
The push refers to a repository [registry.lab.example.com/openshift/wordpress]
53e16fa1f104: Pushed
562dd11ed871: Pushed
6671cb9eb6b3: Pushed
4214911d5945: Pushed
fed26d7fe7b9: Pushed
c8c6d352c96e: Pushed
5a151fa4136e: Pushed
8747705a74d9: Pushed
adfd7c98cdf6: Pushed
354b4ef9664b: Pushed
2da371244fc1: Pushed
315db89f9acb: Pushed
3d2582fdede2: Pushed
53da01089a82: Pushed
0fd7a67d49b3: Pushed
f0c367fa8636: Pushed
ddd6dcab19ff: Pushed
2c40c66f7667: Pushed
latest: digest: sha256:ca4cf4692b7bebd81f229942c996b1c4e6907d6733e977e93d671a54b8053a22 size: 4078
2.4.2 wppv.yaml
apiVersion: v1
kind: PersistentVolume
metadata:name: wppv
spec:capacity:storage: 4GiaccessModes:- ReadWriteOncenfs:path: /exports/wordpressserver: services.lab.example.compersistentVolumeReclaimPolicy: Recycle
2.4.3 wppvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:name: blogclaim
spec:accessModes:- ReadWriteOnceresources:requests:storage: 4Gi
2.4.4 pod-wordpress.yaml
apiVersion: v1
kind: Pod
metadata:name: wordpresslabels:name: wordpress
spec:containers:- image: registry.lab.example.com/openshift/wordpress:latestname: wordpressenv:- name: WORDPRESS_DB_USERvalue: root- name: WORDPRESS_DB_PASSWORDvalue: redhat- name: WORDPRESS_DB_NAMEvalue: blog- name: WORDPRESS_DB_HOST# this is the name of the mysql service fronting the mysql pod in the same namespace# expands to mysql.<namespace>.svc.cluster.local - where <namespace> is the current namespacevalue: mysqlports:- containerPort: 80name: wordpressvolumeMounts:- name: wordpress-persistent-storagemountPath: /var/www/htmlvolumes:- name: wordpress-persistent-storagepersistentVolumeClaim:claimName: blogclaim
2.4.5 service-wp.yaml
apiVersion: v1
kind: Service
metadata:labels:name: wpfrontendname: wpfrontend
spec:ports:# the port that this service should serve on- port: 80targetPort: 80# label keys and values that must match in order to receive traffic for this serviceselector:name: wordpress
2.4.6 创建wordpress
[root@master farm]# oc create -f wppv.yaml
persistentvolume "wppv" created
[root@master farm]# oc create -f wppvc.yaml
persistentvolumeclaim "blogclaim" created
[root@master farm]# oc create -f pod-wordpress.yaml
pod "wordpress" created
[root@master farm]# oc create -f service-wp.yaml
service "wpfrontend" created
2.4.7 创建wordpress路由
[root@master farm]# oc expose svc wpfrontend --hostname=blog.apps.lab.example.com
route "wpfrontend" exposed
2.5 配置wordpress




3. 确认

可以看到这个页面基本没问题了

相关文章:
RHCA之路---EX280(5)
RHCA之路—EX280(5) 1. 题目 Using the example files from the wordpress directory under http://materials.example.com/exam280/wordpress create a WordPress application in the farm project For permanent storage use the NFS shares /exports/wordpress and /export…...
”轻舟已过万重山“-----我回归更新了-----
嘿,朋友们,很久不见,甚是想念,经历过漫长的暑期生活,也许你已然收获满满。有可能你拿到了那梦寐以求的机动车行驶证,开着家长的小车在道路上自由的兜风;有可能你来了一场说走就走的旅行…...
win11右键菜单恢复win10风格
按 winx 输入以下命令 reg.exe add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /f /ve...
Nginx安装及配置负载均衡
文章目录 官网下载Nginx解压安装常用命令配置负载均衡七层负载均衡nginx的负载均衡语法nginx的负载均衡策略故障下线和备份服务设置proxy_pass参数 官网下载Nginx http://nginx.org/en/download.html 注:下载稳定版,即Stateable Version的,…...
C# OpenCvSharp 通道分离
效果 项目 代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using OpenCvSharp; using OpenCvSharp.Extensions;namespac…...
oracle 自定义存储过程(非常简单明了)
语法说明 CREATE OR REPLACE PROCEDURE 存储过程名字 ( 参数1 IN %TYPE, 参数2 IN %TYPE, 参数3 OUT %TYPE) IS 变量1 %TYPE; 变量2 %TYPE; BEGIN存储过程执行语句块 END 存储过程名字;举例说明 1.举一个简单的例子 定义存储过程 easyProcedure 入参为 两个数 出参为 他们的…...
layui--记录
layui 行点击事件:点了没反应? //监听行工具事件layui.table.on(tool(demo), function (obj) {//alert(222) });原因:检查下id与lay-filter是否一致;id与lay-filter必须一致。 <table id"demo" lay-filter"dem…...
【校招VIP】测试技术考点之单元测试集成测试
考点介绍: 单元测试,集成测试的区别是:方式不同、粒度不同、内容不同。单元测试用用于验证编码单元的正确性。集成测试用于验证详细设计。体现了测试由小到大、又内至外、循序渐进的测试过程和分而治之的思想。 测试技术考点之单元测试&集成测试-相…...
【Redis专题】Redis核心数据结构实战与高性能原理解析
目录 前言课程内容一、redis数据类型1.1 字符串(string)类型:比较简单的一种使用存储模型常用命令:(截取自【菜鸟教程】)部分演示应用场景 1.2 哈希(hash)类型:同类数据归…...
常见的几种排序算法
目录 一、插入排序 1、直接插入排序 1.1、排序方法 1.2、图解分析 1.3、代码实现 2、希尔排序 2.1、排序方法 2.2、图解分析 2.3、代码实现 二、选择排序 1、直接选择排序 1.1、排序方法 1.2、图解分析 1.3、代码实现 2、堆排序 2.1、排序方法 2.2、图解分析 …...
动态贴纸、美颜SDK与AR:创造独特的互动体验
目前,动态贴纸、美颜SDK、增强现实(AR)等技术是比较热门的话题,它们所结合的新兴玩法更是收到大家推崇,正潜移默化的改变我们与数字世界互动的方式。 一、动态贴纸:个性化互动的开始 动态贴纸,…...
〔021〕Stable Diffusion 之 提示词反推、自动补全、中文输入 篇
✨ 目录 🎈 反推提示词 / Tagger🎈 反推提示词 Tagger 使用🎈 英文提示词自动补全 / Booru tag🎈 英文提示词自动补全 Booru tag 使用🎈 中文提示词自动补全 / tagcomplete🎈 中文提示词自动补全 tagcomple…...
如何实现响应式布局
要实现响应式布局,您可以采用以下方法: 视口设置: 在HTML的<head>部分中使用meta标签设置视口: <meta name"viewport" content"widthdevice-width, initial-scale1.0">使用百分比: 使…...
HTML <tr> 标签
实例 一个简单的 HTML 表格,包含两行两列: <table border="1"><tr><th>Month</th><th>Savings</th></tr><tr><td>January</td><td>$100</td></tr> </table>定义和用法 &l…...
点云从入门到精通技术详解100篇-点云多尺度分类网络
目录 前言 研究现状与发展趋势 国内外研究现状 点云处理应用研究现状...
电脑怎么设置定时关机,2个简单的操作
电脑作为现代生活中不可或缺的工具,我们通常会在工作或娱乐过程中使用它。但有时候,我们可能需要在一段时间后自动关机,例如在下载完成后或在睡觉前。那么电脑怎么设置定时关机呢?为了满足这种需求,电脑提供了多种定时…...
Uboot指令与烧录
目录 1 NAND Flash: 1)地址空间说明 2)烧写u-boot 3)烧写内核 4)烧写文件系统 5)设置启动参数 2 SPI Flash: 1)地址空间说明 2)烧写u-boot 3)烧写内…...
Visual Studio中使用预编译头文件
预编译头文件(Precompiled Header,PCH)是一种C/C编译优化技术,用于提高大型项目的编译速度。PCH 文件包含了常用的头文件的预编译结果,它可以在编译其他源文件之前被加载到内存中,从而减少了重复的头文件解…...
C语言:选择+编程(每日一练Day15)
目录 选择题: 题一: 题二: 题三: 题四: 题五: 编程题: 题一:寻找奇数 思路一: 题二:寻找峰值 思路一: 本人实力有限可能对一些地方解…...
确定Mac\Linux系统的架构类型是 x86-64(amd64),还是 arm64 架构
我们在下载软件或镜像时会有很多版本,那需要根据我们的系统架构选择正确的软件或镜像版本。 要确定你的系统使用的是 x86-64(amd64) 还是 arm64 架构,可以使用以下方法之一: 使用 uname 命令: 打开终端&am…...
使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式
一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明:假设每台服务器已…...
突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合
强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...
3403. 从盒子中找出字典序最大的字符串 I
3403. 从盒子中找出字典序最大的字符串 I 题目链接:3403. 从盒子中找出字典序最大的字符串 I 代码如下: class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...
学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2
每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...
学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”
2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...
AirSim/Cosys-AirSim 游戏开发(四)外部固定位置监控相机
这个博客介绍了如何通过 settings.json 文件添加一个无人机外的 固定位置监控相机,因为在使用过程中发现 Airsim 对外部监控相机的描述模糊,而 Cosys-Airsim 在官方文档中没有提供外部监控相机设置,最后在源码示例中找到了,所以感…...
Java数值运算常见陷阱与规避方法
整数除法中的舍入问题 问题现象 当开发者预期进行浮点除法却误用整数除法时,会出现小数部分被截断的情况。典型错误模式如下: void process(int value) {double half = value / 2; // 整数除法导致截断// 使用half变量 }此时...
Selenium常用函数介绍
目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...
【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案
目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后,迭代器会失效,因为顺序迭代器在内存中是连续存储的,元素删除后,后续元素会前移。 但一些场景中,我们又需要在执行删除操作…...
