参考:
手把手教你搞定K8S集群的安装部署

1、创建MySql 容器

创建MySql RC(Replication Controller)文件

mkdir test-mysql && cd test-mysql/

[root@centos7-189 test-mysql]# vim mysql-rc.yaml

apiVersion: v1
kind: ReplicationController         #副本控制器RC
metadata:name: mysql                      #RC的名称,全局唯一
spec:replicas: 1                    #Pod副本的期待数量selector:app: mysql                   #符合目标的Pod拥有此标签template:                      #根据模板创建Pod的副本(实例)metadata:labels:app: mysql                 #Pod副本拥有的标签,对应RC的Selectorspec:containers:                   #Pod内容器的定义部分- name: mysql                 #容器名称image: docker.io/library/mysql:5.7                #容器对应的Docker Imageports:- containerPort: 3306       #容器应用监听的端口号env:- name: MYSQL_ROOT_PASSWORDvalue: "123456"

创建 mysql-rc.

[root@centos7-189 test-mysql]# kubectl create -f mysql-rc.yaml

replicationcontroller/mysql created

查看刚创建的RC

[root@centos7-189 test-mysql]# kubectl get rc

NAME    DESIRED   CURRENT   READY   AGE
mysql   1         1         0       15s

查看刚创建的Pod

[root@centos7-189 test-mysql]# kubectl get pods

NAME          READY   STATUS    RESTARTS   AGE
mysql-tpxn2   1/1     Running   0          96s

查看刚创建的Pod详情

[root@centos7-189 test-mysql]# kubectl describe pod mysql-tpxn2

Name:         mysql-tpxn2
Namespace:    default
Priority:     0
Node:         centos7-186/192.168.1.186
Start Time:   Mon, 15 Nov 2021 14:59:05 +0800
Labels:       app=mysql
Annotations:  <none>
Status:       Running
IP:           10.244.1.2
IPs:IP:           10.244.1.2
Controlled By:  ReplicationController/mysql
...
Events:Type    Reason     Age    From               Message----    ------     ----   ----               -------Normal  Scheduled  2m50s  default-scheduler  Successfully assigned default/mysql-tpxn2 to centos7-186Normal  Pulling    2m48s  kubelet            Pulling image "docker.io/library/mysql:5.7"Normal  Pulled     85s    kubelet            Successfully pulled image "docker.io/library/mysql:5.7" in 1m23.052534372sNormal  Created    85s    kubelet            Created container mysqlNormal  Started    85s    kubelet            Started container mysql

从这里可以看到容器创建在节点 Node: centos7-186/192.168.1.186

ssh 到 192.168.1.186 验证查看

[root@centos7-186 ~]# docker ps |grep mysql

10c4682b4161   mysql                                               "docker-entrypoint.s…"   54 minutes ago      Up 54 minutes                k8s_mysql_mysql-tpxn2_default_b4dd68ab-2fb3-4ada-9069-cdfad8f5287c_0
7643b47c8a8a   registry.aliyuncs.com/google_containers/pause:3.5   "/pause"                 56 minutes ago      Up 56 minutes                k8s_POD_mysql-tpxn2_default_b4dd68ab-2fb3-4ada-9069-cdfad8f5287c_0

2、 创建关联的Kubernets Service

创建 service 配置文件

[root@centos7-189 test-mysql]# vim mysql-svc.yaml

apiVersion: v1
kind: Service                 #表名是Kubernetes Service
metadata:name: mysql                 #Service的全局唯一名称
spec:type: NodePortports:- port: 3306               #Service提供服务器的端口号nodePort: 30001          #堆外暴露端口selector:                   #Service对应的Pod拥有这里定义的标签app: mysql

创建 service

[root@centos7-189 test-mysql]# kubectl create -f mysql-svc.yaml

service/mysql created

查看刚创建的Service

[root@centos7-189 test-mysql]# kubectl get services

NAME         TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
kubernetes   ClusterIP   10.96.0.1        <none>        443/TCP          30h
mysql        NodePort    10.102.141.170   <none>        3306:30001/TCP   6s

3. 验证 mysql 任务

  1. 安装一个 mysql 客户端
    如果已经有安装过 mysql-server的可以直接从那里去验证
    [root@centos7-189 test-mysql]# yum install mysql -y

  2. 连接测试
    [root@centos7-189 test-mysql]# mysql -h 192.168.1.189 -u root -P 30001 -p

     MySQL [(none)]> show databases;+--------------------+| Database           |+--------------------+| information_schema || mysql              || performance_schema || sys                |+--------------------+4 rows in set (0.00 sec)MySQL [(none)]> use mysql;Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -ADatabase changedMySQL [mysql]> show tables;...MySQL [mysql]> desc user;...MySQL [mysql]> select User,Host from user;+---------------+-----------+| User          | Host      |+---------------+-----------+| root          | %         || mysql.session | localhost || mysql.sys     | localhost || root          | localhost |+---------------+-----------+4 rows in set (0.00 sec)MySQL [mysql]> exit
    

清理

kubectl get rc

NAME    DESIRED   CURRENT   READY   AGE
mysql   1         1         1       4d1h

kubectl get rs

No resources found in default namespace.

kubectl delete rc mysql

replicationcontroller "mysql" deleted

k8s学习: 创建 mysql 任务相关推荐

  1. 学习使用RIA Framework Flex创建MySQL管理UI(初学Flex实例教程)

    引言:一直想学习Flex来着,平时都是因为太懒的缘故,没有去实践,在csdn上无意看到这篇博文,觉得对自己挺有帮助的,就引过来了~ PHPMyAdmin的出现震撼了业界,这毫无疑问.它当然是基于PHP ...

  2. k8s学习-污点和容忍(概念、模版、创建、删除)

    目录 概念 模版 实战 添加污点 添加容忍 移除污点 参考 概念 污点(Taint)使节点能够排斥/驱逐一类特定的 Pod,通过给 Node 打一些污点,来限制 Pod 调度到某些 Node 上. 容 ...

  3. k8s学习-Secret(创建、使用、更新、删除等)

    目录 概念 模板 secret的类型 实战 创建 使用kubectl 使用yaml文件创建 使用 环境变量 挂载 imagePullSecret 更新 删除 注意项 参考 概念 Secret 是一个主 ...

  4. k8s学习-CKS真题-secret创建、使用

    目录 题目 环境搭建 解题 任务一 任务二 任务三 模拟题 参考 题目 Task 在 namespace istio-system 中获取名为 db1-test 的现有 secret 的内容 将 us ...

  5. php django mysql配置文件_Mysql学习Django+mysql配置与简单操作数据库实例代码

    <Mysql学习Django+mysql配置与简单操作数据库实例代码>要点: 本文介绍了Mysql学习Django+mysql配置与简单操作数据库实例代码,希望对您有用.如果有疑问,可以联 ...

  6. phpnow mysql_使用PHPnow搭建本地PHP环境+创建MySQL数据库 | 倡萌的自留地

    要想学习WordPress建站,在本地搭建PHP环境是十分必要的,在以后的建站日子里,你可以使用这个环境来进行wordpress的程序学习.调试等工作,等你熟悉了wordpress以后,再购买域名和空 ...

  7. [Kubernetes] 在K8S上部署MySQL 8.0并数据持久化

    在K8S上安装MySQL 1.创建PV apiVersion: v1 kind: PersistentVolume metadata:name: model-db-pv spec:storageCla ...

  8. ASP.NET Core on K8s学习之旅(13)Ocelot API网关接入

    [云原生]| 作者/Edison Zhou 这是恰童鞋骚年的第232篇原创文章 上一篇介绍了Ingress的基本概念和Nginx Ingress的基本配置和使用,考虑到很多团队都在使用Ocelot作为 ...

  9. 创建mysql数据库图解_mysql数据库怎么创建外键?(图文+视频)

    本篇文章主要给大家介绍mysql数据库怎么创建外键. 关于mysql数据库外键的基础介绍,我们在这篇文章[Mysql外键是什么?有哪些用处?]中,已经给大家介绍过了,需要的朋友可以选择参考. 了解了外 ...

  10. phpnow mysql字符集_使用PHPnow搭建本地PHP环境+创建MySQL数据库

    要想学习WordPress建站,在本地搭建PHP环境是十分必要的,在以后的建站日子里,你可以使用这个环境来进行wordpress的程序学习.调试等工作,等你熟悉了wordpress以后,再购买域名和空 ...

最新文章

  1. springboot 简单自定义starter - beetl
  2. 华为mate x2什么时候更新鸿蒙系统,华为Mate X2真机发布,今年四月可升级鸿蒙系统...
  3. MongoDB 基本操作增删改查
  4. 硬核推荐:博主神器OpenWrite,免费的一文多发平台,无需部署,注册即用,安全可靠!...
  5. ansys怎么批量输入点坐标_当SpaceClaim 遇上ANSYS (二)
  6. Vue+Video.js播放m3u8视频流(海康威视摄像头+RTMP服务+FFmpeg)
  7. Java程序停止 mq通道未关闭_java – 如何在MQ上停止丢失消息
  8. td外边加div为啥不隐藏_过年炸油饼注意了,秘制配方比例教给你,柔软不吸油,放凉了不硬...
  9. Gink掉过的坑(一):将CCTableView导入到lua中
  10. CTO:不要在 Java 代码中写 set/get 方法了,逮一次罚款
  11. 【算法学堂】字符串基础算法
  12. python爬取妹子图(复制即可用)
  13. Google谷歌新手SEO优化教程篇【1】
  14. 记录Qt 信号toggled 和triggered一个bug
  15. 笔记33 笨办法学python练习40之二:类和对象
  16. 如何快速清洗空调扇(水冷式电风扇)(图文教程)
  17. 深度学习 - 开发平台
  18. scalac: Token not found: /Users/shengquan.nian/Library/Caches/JetBrains/IntelliJIdea2021.1/compile-s
  19. [转]Magento 2 and 1 Million Products
  20. pytorch,cuda,cudatoolkit,driver版本详解

热门文章

  1. bzoj 3351 [ioi2009]Regions
  2. [转载]CMMI之功能点估算法:EI、EQ和EO
  3. sqlmap批量扫描burpsuite拦截的日志记录
  4. 数据结构学习笔记06排序 (快速排序、表排序、基数排序)
  5. Oracle服务的作用
  6. SQL Fundamentals || DCL(Data Control Language) || 用户管理Profile概要文件
  7. JAVA并发:深入分析volatile
  8. SQL语句Not IN优化方案
  9. C# struct 性能损失
  10. UNIX网络编程读书笔记:原始套接口