使用Kubernetes集群環(huán)境部署MySQL數(shù)據(jù)庫(kù)的實(shí)戰(zhàn)記錄
1 編寫 mysql.yaml文件
編寫yaml如下
apiVersion: v1
kind: Namespace
metadata:
name: devops # Namespace 的名稱
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: devops-mysql # deployment控制器名稱
namespace: devops
spec:
replicas: 1
revisionHistoryLimit: 5
strategy:
type: RollingUpdate
selector:
matchLabels:
app: devops-mysql
template:
metadata:
labels:
app: devops-mysql
spec:
volumes:
- name: devops-mysql
nfs:
server: xx.xx.xx.xx # 修改為掛載存儲(chǔ)的服務(wù)器ip
path: /root/data/nfs/mysql/devops # 修改為存儲(chǔ)服務(wù)器的存儲(chǔ)掛載路徑
containers:
- name: devops-mysql
image: mysql:5.7
env:
- name: MYSQL_ROOT_PASSWORD
value: xxxxxxxx # 設(shè)置MySQL數(shù)據(jù)庫(kù)登錄密碼
imagePullPolicy: Always
ports:
- containerPort: 3306
volumeMounts:
- name: devops-mysql
mountPath: /var/lib/mysql
---
apiVersion: v1
kind: Service
metadata:
name: devops-mysql # 數(shù)據(jù)庫(kù)服務(wù)的名稱
namespace: devops
spec:
ports:
- port: 3306
protocol: TCP
targetPort: 3306
nodePort: 30001 # 對(duì)外訪問(wèn)的端口
selector:
app: devops-mysql
type: NodePort
sessionAffinity: ClientIP 2 執(zhí)行如下命令創(chuàng)建
kubectl apply -f mysql.yaml
3 通過(guò)如下命令查看創(chuàng)建結(jié)果
使用如下命令查看
kubectl get pod -n devops | grep mysql
如:
[root@master ~]# kubectl get pod -n devops | grep mysql devops-mysql-59b68c47d4-ttbng 1/1 Running 0 23h [root@master ~]#
4 命令行進(jìn)入Pod并登錄mysql
如下;
[root@master ~]# kubectl exec -it devops-mysql-59b68c47d4-ttbng bash -n devops kubectl exec [POD] [COMMAND] is DEPRECATED and will be removed in a future version. Use kubectl exec [POD] -- [COMMAND] instead. root@devops-mysql-59b68c47d4-ttbng:/# mysql -uroot -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 13 Server version: 5.7.36 MySQL Community Server (GPL) Copyright (c) 2000, 2021, Oracle and/or its affiliates. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 5 rows in set (0.01 sec) mysql>
5 至此,數(shù)據(jù)庫(kù)已經(jīng)安裝完成,然后即可通過(guò)ip+端口,這里是30001,進(jìn)行數(shù)據(jù)庫(kù)鏈接了
到此這篇關(guān)于使用Kubernetes集群環(huán)境部署MySQL數(shù)據(jù)庫(kù)的文章就介紹到這了,更多相關(guān)Kubernetes部署MySQL內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
mysql之動(dòng)態(tài)增添字段實(shí)現(xiàn)方式
這篇文章主要介紹了mysql之動(dòng)態(tài)增添字段實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05
mysql Access denied for user ‘root’@’localhost’ (using passw
這篇文章主要介紹了mysql Access denied for user ‘root’@’localhost’ (using password: YES)解決方法,本文給出詳細(xì)的解決步驟及操作注釋,需要的朋友可以參考下2015-07-07
mysql性能優(yōu)化工具--tuner-primer使用介紹
這篇文章主要介紹了mysql性能優(yōu)化工具--tuner-primer的使用方法與返回?cái)?shù)據(jù)分析,需要的朋友可以參考下2016-05-05
解決hibernate+mysql寫入數(shù)據(jù)庫(kù)亂碼
初次沒(méi)習(xí)hibernate,其中遇到問(wèn)題在網(wǎng)上找的答案與大家共同分享!2009-07-07
MybatisPlus攔截器如何實(shí)現(xiàn)數(shù)據(jù)表分表
為了解決MySQL中大數(shù)據(jù)量的查詢效率問(wèn)題,采用水平拆分策略,通過(guò)取模運(yùn)算確定表后綴,實(shí)現(xiàn)數(shù)據(jù)的有效管理,設(shè)計(jì)分表時(shí),需利用線程變量存取請(qǐng)求參數(shù),并通過(guò)攔截器確定操作的具體表名,從而優(yōu)化數(shù)據(jù)處理性能,此方法適用于業(yè)務(wù)表數(shù)據(jù)量大或快速增長(zhǎng)的場(chǎng)景2024-11-11
MySQL數(shù)據(jù)庫(kù)的實(shí)時(shí)備份知識(shí)點(diǎn)詳解
本篇文章給大家分享了關(guān)于MySQL數(shù)據(jù)庫(kù)的實(shí)時(shí)備份知識(shí)點(diǎn)內(nèi)容,有需要的朋友們可以參考下。2018-08-08

