Kubernetes学习笔记九:MySQL和WordPress安装
MySQL安装yaml文件:定义了Service、Secret、StatefulSet,使用的存储是之前创建的NFS服务器。
apiVersion: v1
kind: Service
metadata:name: mysql-stslabels:app: mysql-sts
spec:ports:- port: 3306selector:app: mysql-stsclusterIP: None
---
apiVersion: v1
kind: Secret
metadata:name: mysecret
type: Opaque
data:password: MTIzNDU2username: cm9vdA==
#user/pass=root/123456
---
apiVersion: apps/v1
kind: StatefulSet
metadata:name: mysql-sts
spec:serviceName: "mysql-sts"replicas: 1volumeClaimTemplates:- metadata:name: mysql-local-storageannotations:volume.beta.kubernetes.io/storage-class: "nfs"spec:accessModes: [ "ReadWriteOnce" ]resources:requests:storage: 25Giselector:matchLabels:app: mysql-ststemplate:metadata:labels:app: mysql-stsspec:nodeSelector:wordpress: mysqlcontainers:- image: mysql:5.7.34name: mysqlenv:- name: MYSQL_ROOT_PASSWORDvalueFrom:secretKeyRef:name: mysecretkey: password#- name: SECRET_USERNAME# valueFrom:# secretKeyRef:# name: mysecret# key: usernameports:- containerPort: 3306name: mysqlvolumeMounts:- name: mysql-local-storagereadOnly: falsemountPath: /var/lib/mysqlinitContainers:- name: init-wordpress-mysqlimage: busyboximagePullPolicy: IfNotPresentcommand: ['sh', '-c', 'rm -rf /data/*', 'until nslookup mysql-sts; do echo waiting for mysql-sts; sleep 2; done;']volumeMounts:- name: mysql-local-storagereadOnly: falsemountPath: /data
WordPress安装yaml文件:定义了PVC、Service、ConfigMap和Deployment,存储使用的是之前创建的NFS服务器。
apiVersion: v1
kind: PersistentVolumeClaim
metadata:name: pvc-wp
spec:storageClassName: nfsaccessModes:- ReadWriteManyresources:requests:storage: 12G
---
apiVersion: v1
kind: Service
metadata:name: wordpresslabels:app: wordpress
spec:ports:- port: 80targetPort: 80nodePort: 30180selector:app: wordpresstype: NodePort
---
apiVersion: v1
data:db-host: mysql-sts
kind: ConfigMap
metadata:name: mycm
---
apiVersion: apps/v1
kind: Deployment
metadata:name: wordpresslabels:app: wordpress
spec:selector:matchLabels:app: wordpresstemplate:metadata:labels:app: wordpressspec:nodeSelector:wordpress: mysqlcontainers:- image: wordpress:4.8-apachename: wordpressimagePullPolicy: IfNotPresentenv:- name: WORDPRESS_DB_HOSTvalueFrom:configMapKeyRef:name: mycmkey: db-host- name: WORDPRESS_DB_USERvalueFrom:secretKeyRef:name: mysecretkey: username- name: WORDPRESS_DB_PASSWORDvalueFrom:secretKeyRef:name: mysecretkey: passwordports:- containerPort: 80name: wordpressresources:requests:cpu: 0.5volumeMounts:- name: wordpress-local-storagereadOnly: falsemountPath: /var/www/htmlvolumes:- name: wordpress-local-storagepersistentVolumeClaim:claimName: pvc-wp
注意这两个yaml文件都定义了nodeSelector,只会作用在带有wordpress=mysql标签的节点上。
wordpress显示无法连接Mysql。
参考:1130, “Host ‘xxxx’ is not allowed to connect to this MySQL server”
执行以下命令:
use mysql;
使用mysql数据库。
update user set host=‘%’ where user=‘root’;
修改用户root的访问主机。
select host,user from user;
查看用户的主机访问权限。
flush privileges;
使修改权限生效,非常关键,开始我没加这个导致不生效。
访问MySQL的主机IP加端口查看是否生效:
在yaml文件配置了root账户的密码,登录MySQL的时候发现使用该密码无法登录,可以直接使用mysql -uroot登录。然后修改root账户的权限:
参考:mysql如何修改root用户的密码
wordpress连接上mysql后,会自动创建一个wordpress数据库。
wordpress服务可以成功访问。
查看Volume挂载的路径
使用NodePort访问
wordpress安装好后会在wordpress数据库生成表。
Kubernetes学习笔记九:MySQL和WordPress安装相关推荐
- 【学习笔记】mysql多实例安装
mysql多实例安装(笔记) 安装环境:CentOS最小化的系统 已经编译安装了mysql 先停止mysql服务 killall -9 mysql 创建一个/data目录 再创建一个端口号的文件夹(想 ...
- Kubernetes学习笔记
Kubernetes学习笔记 1.简介 用于自动部署.扩缩和管理容器化应用程序的开源系统,支持自动化部署.大规模可伸缩. 2.架构 2.1.Control Plane 对集群做出全局决策 Contro ...
- Kubernetes学习笔记之Calico CNI Plugin源码解析(一)
女主宣言 今天小编为大家分享Kubernets Calico CNI Plugin的源码学习笔记,希望对正在学习k8s相关部分的同学有所帮助: PS:丰富的一线技术.多元化的表现形式,尽在" ...
- Kubernetes学习笔记-未整理
Kubernetes学习笔记 标签:Kubernetes 学习笔记 原文:https://github.com/wtysos11/NoteBook/blob/master/微服务/Kubernetes ...
- MySQL学习笔记 | 04 - MySQL数据库基本操作(增加、修改、删除、查看)
MySQL学习笔记 | 01-为什么要使用数据库 MySQL学习笔记 | 02 - MySQL在Windows下的安装.配置.服务启动/停止.用户登录.查看版本号 MySQL学习笔记 | 03 - M ...
- Kubernetes学习笔记【2年以前的笔记】
Kubernetes学习笔记 知识储备 熟悉linux基础命令 熟悉docker的基本原理和操作 了解ssl证书工作原理 了解负载均衡工作原理(L4/L7) 了解分布式概念 了解域名解析原理 了解网络 ...
- IOS学习笔记(九)之UIAlertView(警告视图)和UIActionSheet(操作表视图)基本概念和使用方法...
IOS学习笔记(九)之UIAlertView(警告视图)和UIActionSheet(操作表视图)基本概念和使用方法 Author:hmjiangqq Email:jiangqqlmj@163.com ...
- Kubernetes学习笔记(一)
2019独角兽企业重金招聘Python工程师标准>>> Kubernetes学习笔记(一) 博客分类: Kubernetes 导语 2015年4月,传闻已久的Borg论文伴随Kube ...
- kubernetes学习笔记 (二):k8s初体验
本文采用本地k8s v1.10.3版本开发,如果还没有搭建可参照 kubernetes学习笔记 (一):搭建本地k8s开发环境进行搭建 搭建本地Docker镜像仓库 docker pull docke ...
最新文章
- Crash工具实战-变量解析【转】
- 一次经典的tcp三次握手
- linux shell 字符串操作详解 (长度,读取,替换,截取,连接,对比,删除,位置 )
- 宣布JavaScript 2017状况调查
- 接入gitment为hexo添加评论功能
- Jumpserver0.4.0基于Centos7安装
- 使用Android Studio打包app
- Oracle安装本地和远程两种方式的DISPLAY设置
- 理解JVM(五):Java内存模型与线程
- PyTorch 算法加速指南
- linux常用下载工具
- WebRTC 之 RTX
- 计算机考研408的算法题详解
- lxr.linux.iso,linux c and asm 同时使用
- 网站分析实战——如何以数据驱动决策,提升网站价值(大数据时代的分析利器)
- 第05课:Redis 实际应用中的异常场景及其根因分析和解决方案
- R语言题目及答案(1)
- 使用 Python +OpenCV+Deepface实现人脸、情感和种族检测
- torch中manual_seed的作用
- matlab仿真磁滞回线,磁滞回线测量方法及Simulink仿真分析研究.pdf