您现在的位置是:首页 > 文章详情

kubernetes 搭建单节点mysql服务

日期:2018-09-27点击:477

参考链接:https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/

一、创建service

apiVersion: v1 kind: Service metadata: name: mysql labels: app: mysql namespace: admin-d2069c spec: ports: - name: mysql port: 3306 clusterIP: None selector: app: mysql

二、创建StatefulSet

apiVersion: apps/v1beta1 kind: StatefulSet metadata: name: mysql namespace: admin-d2069c spec: serviceName: mysql replicas: 1 selector: matchLabels: app: mysql template: metadata: labels: app: mysql namespace: admin-d2069c spec: containers: - name: mysql image: mysql:5.7 env: - name: MYSQL_ROOT_PASSWORD value: "123" ports: - name: mysql containerPort: 3306 volumeMounts: - name: lihaile mountPath: /var/lib/mysql subPath: mysql - name: conf mountPath: /etc/mysql/conf.d resources: requests: cpu: 300m memory: 200M livenessProbe: exec: command: ["mysqladmin", "-h", "127.0.0.1", "-uroot", "-p123", "ping"] initialDelaySeconds: 30 periodSeconds: 10 timeoutSeconds: 5 readinessProbe: exec: # Check we can execute queries over TCP (skip-networking is off). command: ["mysql", "-h", "127.0.0.1", "-uroot", "-p123", "-e", "SELECT 1"] initialDelaySeconds: 5 periodSeconds: 2 timeoutSeconds: 1 volumes: - name: conf emptyDir: {} - name: config-map configMap: name: mysql volumeClaimTemplates: - metadata: name: lihaile annotations: volume.beta.kubernetes.io/storage-class: "managed-nfs-storage" namespace: admin-d2069c spec: accessModes: ["ReadWriteOnce"] resources: requests: storage: 2Gi

三、创建访问Service

apiVersion: v1 kind: Service metadata: name: mysql-access labels: app: mysql namespace: admin-d2069c spec: ports: - name: mysql port: 3306 selector: app: mysql

查看Mysql

root@node4:~# kubectl -n admin-d2069c get pvc,pv,statefulset,pod,service |grep mysql pvc/storage-mysql-0 Bound pvc-a6c63604-c2ee-11e8-b599-0050568eef9f 512M RWX managed-nfs-storage 18s pv/pvc-a6c63604-c2ee-11e8-b599-0050568eef9f 512M RWX Delete Bound admin-d2069c/storage-mysql-0 managed-nfs-storage 18s statefulsets/mysql 1 1 18s po/mysql-0 1/1 Running 0 18s svc/mysql ClusterIP None <none> 3306/TCP 18s svc/mysql-access ClusterIP 10.68.31.80 <none> 3306/TCP 18s ing/mysql-access jekens.com 80 18s

五、测试

1、查看集群详情和状态

root@node4:~# mysql -h 10.68.31.80 -p123 mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 124 Server version: 5.7.23 MySQL Community Server (GPL) Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved. 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 | +--------------------+ 4 rows in set (0.00 sec) mysql> 
原文链接:https://yq.aliyun.com/articles/646189
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章