上一个节MYSQL没有运行成功,我们安装了NFS这一节我们就来运行MYSQL
1.创建pv.yaml,路径要提前创建:mydb
apiVersion: v1 #指定的api版本,要符合kubectl apiVersion规定,v1是稳定版本 kind: PersistentVolume #k8s资源类型,PersistentVolumeClaim资源, metadata: #资源的元数据语句块,是针对kind对应资源的全局属性元数据块 name: pvc0001 #PVC名称,自定义 spec: capacity: storage: 8Gi volumeMode: Filesystem accessModes: - ReadWriteOnce # 我这里是nfs也可以是本地 nfs: # 这个路径是nfs服务端路径 path: /home/nfs/mydb server: 192.168.1.19
2.这时候查看MYSQL已经运行了
# 创建一下pv [root@node1 pv]# kubectl apply -f pv.yaml persistentvolume/pvc0001 created # 查看创建的pv [root@node1 pv]# kubectl get pv NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE pvc0001 8Gi RWO Retain Bound default/mydb-mysql 15s # 可以看到已经是绑定状态了 [root@node1 pv]# kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE mydb-mysql Bound pvc0001 8Gi RWO 26m # 可以看到已经是运行状态了 NAMESPACE NAME READY STATUS RESTARTS AGE default mydb-mysql-746cbdbff6-jpsgn 1/1 Running 0 4m19s # 查看详细信息 [root@node1 pv]# helm status mydb NAME: mydb LAST DEPLOYED: Mon Apr 10 22:11:22 2023 # 可以看到已经打印出mysql的默认密码 [root@node1 pv]# kubectl get secret --namespace default mydb-mysql -o jsonpath="{.data.mysql-root-password}" | base64 --decode; echo uaOA6xlSOQ # 我们就不用自己安装客户端测试了,我们直接进入容器进行测试 [root@node1 pv]# kubectl exec -it mydb-mysql-746cbdbff6-jpsgn /bin/sh # 进入容器执行登录命令 # mysql -uroot -puaOA6xlSOQ mysql: [Warning] Using a password on the command line interface can be insecure. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> # 查看数据库 mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.00 sec) # 创建一个数据库 mysql> create database test; Query OK, 1 row affected (0.01 sec)