使用Kubernetes集群环境部署MySQL数据库的实战记录

吾爱主题 阅读:159 2024-04-01 23:25:44 评论:0

1 编写 mysql.yaml文件

编写yaml如下

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 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  # 修改为挂载存储的服务器ip              path: /root/data/nfs/mysql/devops   # 修改为存储服务器的存储挂载路径        containers:          - name: devops-mysql            image: mysql:5.7            env:              - name: MYSQL_ROOT_PASSWORD                value: xxxxxxxx     # 设置MySQL数据库登录密码            imagePullPolicy: Always            ports:              - containerPort: 3306            volumeMounts:              - name: devops-mysql                mountPath: /var/lib/mysql --- apiVersion: v1 kind: Service metadata:    name: devops-mysql    # 数据库服务的名称    namespace: devops spec:    ports:      - port: 3306        protocol: TCP        targetPort: 3306        nodePort: 30001    # 对外访问的端口    selector:      app: devops-mysql    type: NodePort    sessionAffinity: ClientIP

2 执行如下命令创建

?
1 kubectl apply -f mysql.yaml

3 通过如下命令查看创建结果

使用如下命令查看

?
1 kubectl get pod -n devops | grep mysql

如:

?
1 2 3 [root@master ~] # kubectl get pod -n devops | grep mysql devops-mysql-59b68c47d4-ttbng               1 /1     Running   0          23h [root@master ~] #

4 命令行进入Pod并登录mysql

如下;

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 [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 至此,数据库已经安装完成,然后即可通过ip+端口,这里是30001,进行数据库链接了

到此这篇关于使用Kubernetes集群环境部署MySQL数据库的文章就介绍到这了,更多相关Kubernetes部署MySQL内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://juejin.cn/post/7101584734286774303

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容