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…...
DeepSeek LeetCode 1210. 穿过迷宫的最少移动次数 public int minimumMoves(int[][] grid)
我来分析 LeetCode 1210 “穿过迷宫的最少移动次数” 的解题思路和实现。 问题分析 我们有一条长度为 2 的蛇,需要从起点 (0,0) 和 (0,1)(水平放置)移动到终点 (n-1, n-2) 和 (n-1, n-1)(仍为水平放置)。蛇可以&#x…...
OpenClaw日志分析技巧:千问3.5-9B辅助故障定位
OpenClaw日志分析技巧:千问3.5-9B辅助故障定位 1. 为什么需要AI辅助日志分析? 上周排查一个OpenClaw任务失败的问题时,我盯着3MB的日志文件看了整整两小时。那些重复的报错堆栈和模糊的警告信息像迷宫一样——直到我意识到:与其…...
保姆级教程:用Keil5将你的STM32F103工程无缝迁移到国民技术N32G45X
从STM32F103到N32G45X:嵌入式工程师的国产MCU迁移实战指南 在嵌入式开发领域,芯片选型往往决定着项目的成败。随着国产微控制器的崛起,越来越多的工程师开始考虑将原有基于STM32的项目迁移到国产平台。国民技术的N32G45X系列以其出色的性价比…...
MCP4151数字电位器Arduino驱动与三线SPI时序详解
1. MCP4151 数字电位器 Arduino 库深度技术解析1.1 器件本质与工程定位MCP4151 是 Microchip 推出的单通道、10kΩ 标称阻值、257 抽头(0–256)非易失性数字电位器。其核心价值不在于替代模拟电位器进行手动调节,而在于为嵌入式系统提供可编程…...
BGP选路实战:从理论到实验的十三条法则
1. BGP选路原则概述:网络工程师的导航系统 如果把互联网比作一个超级城市,BGP就是这座城市的路由导航系统。作为网络工程师,我们每天都要处理成千上万条路由信息,而BGP的十三条选路原则就是帮助我们做出最优路径选择的黄金法则。这…...
电子工程师必读:假芯片识别与防范全指南
1. 芯片造假现象深度解析作为一名在电子行业摸爬滚打十余年的工程师,我见过太多因为假芯片导致的惨痛教训。记得2018年我们团队做一个工业控制器项目,就因为一批假冒的STM32芯片导致整批产品返工,直接损失超过50万元。这件事让我深刻意识到&a…...
别再只会apt autoremove了!dpkg报错Sub-process returned error code (1)的5种修复姿势全解析
深度解析dpkg报错Sub-process returned error code (1)的5种专业修复策略 当你正在Ubuntu或Debian系统上安装某个关键软件包时,突然终端弹出一条刺眼的错误信息:"Sub-process /usr/bin/dpkg returned an error code (1)"。这不是普通的警告&am…...
计算机毕业设计:Python二手车分析与定价系统 Django框架 可视化 线性回归 数据分析 机器学习 深度学习 AI 大模型(建议收藏)✅
博主介绍:✌全网粉丝10W,前互联网大厂软件研发、集结硕博英豪成立软件开发工作室,专注于计算机相关专业项目实战6年之久,累计开发项目作品上万套。凭借丰富的经验与专业实力,已帮助成千上万的学生顺利毕业,…...
计算机毕业设计:Python城市地铁客流与票务可视化分析平台 Django框架 数据分析 可视化 大数据 机器学习 深度学习(建议收藏)✅
博主介绍:✌全网粉丝10W,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业项目实战6年之久,选择我们就是选择放心、选择安心毕业✌ > 🍅想要获取完整文章或者源码,或者代做,拉到文章底部即可与…...
Linux内核中的高精度定时器:hrtimer机制详解
Linux内核中的高精度定时器:hrtimer机制详解 作为一名深耕操作系统和嵌入式开发的工程师,我对Linux内核中的高精度定时器(hrtimer)机制有着深入的理解。hrtimer提供了微秒甚至纳秒级的定时精度,是实时应用的关键基础设…...
