k8s部署mycat集群记录

临时操作后续细化补充

1.创建mycat pv

 cat mycat.pv.yaml 
apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv-nfs-mycat01                     #创建的pv名称可创建多个.
  namespace: mt-math                    #属于的命名空间
spec:
  capacity:
    storage: 210Mi                        #创建的pv容量为1G
  accessModes:
  - ReadWriteMany                       #pv的访问模式:可读可写可挂在多个节点
  persistentVolumeReclaimPolicy: Retain #回收策略
  nfs:                                  #创建的pv数据来源
    path: /NFS/mycat/pv01                     #数据源目录
    server: 192.168.0.14                #数据源ip
---
apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv-nfs-mycat02                     #创建的pv名称可创建多个.
  namespace: mt-math                    #属于的命名空间
spec:
  capacity:
    storage: 210Mi                        #创建的pv容量为1G
  accessModes:
  - ReadWriteMany                       #pv的访问模式:可读可写可挂在多个节点
  persistentVolumeReclaimPolicy: Retain #回收策略
  nfs:                                  #创建的pv数据来源
    path: /NFS/mycat/pv02                     #数据源目录
    server: 192.168.0.14                #数据源ip

2.创建mycat 的configmap

 cat mycat.config.yaml 
apiVersion: v1
data:
  schema.xml: "\n\n\n    \n    \n    \n    \n             select user()\n
    \           \n            \n              \n             \n         \n\n"
  server.xml: "\n\n\n\n\t\n\t0 \n\t1\n\t0
    \ \n\t0
    \ \n\n\t\t2\n\tfalse \n       \n
    \        \n\t\n\t\n        \n\t\t0\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t0\n\t\t\n\t\t\t\n\t\t1\n\n\t\t\n
    \       64k\n\n\t\t\n\t\t1k\n\n\t\t0\n\n\t\t\n\t\t384m\n\n\n\t\t\n\t\tfalse\n\n\t\t\n\t\t\n\n\t\t\n\t\t\n\t\t\n\t\tfalse\n\t\t\n\t\ttrue\n\t\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\n\t\n\t\t123456\n\t\tmtmath\n\t\t\n\t\t\n\t\t\n\t\n\n\t\n\t\t123456\n\t\tmtmath\n\t\ttrue\n\t\n\n\n"
kind: ConfigMap
metadata:
  creationTimestamp: 2019-06-06T09:53:39Z
  name: mycat-config
  namespace: mt-math

3.创建mycat无头服务

cat mycat.StatefulSet.yaml 
#创建第一个无头服务mycat#################
apiVersion: v1
kind: Service
metadata:
  labels:
    app: db-proxy
  name: db-proxy
  namespace: mt-math
spec:
  ports:
  - name: db-porxy
    port: 3306
  clusterIP: None
  selector:
    app: wylpod-mycat
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
  annotations:
  labels:
    app: wylpod-mycat
  name: wylpod-mycat
  namespace: mt-math
spec:
  serviceName: "db-proxy"
  replicas: 2
  selector:
    matchLabels:
      app: wylpod-mycat
  template:
    metadata:
      annotations:
      labels:
        app: wylpod-mycat
    spec:
      containers:
        - image: "harbor.bestyunyan.club:5588/library/mycat:1.6"
          imagePullPolicy: IfNotPresent
          name: wylpod-mycat
          ports:
          - containerPort: 3306
            protocol: TCP
            name: wylpod-mycat
          volumeMounts:
          - name: mycat-pvc
            mountPath: /usr/local/mycat/logs
          - name: configmap-mycat
            mountPath: /usr/local/mycat/conf/server.xml
            subPath: server.xml
          - name: configmap-mycat
            mountPath: /usr/local/mycat/conf/schema.xml
            subPath: schema.xml
      volumes:                       
      - name: configmap-mycat             
        configMap:                         
          name: mycat-config
          items:
          - key: server.xml
            path: server.xml
          - key: schema.xml
            path: schema.xml
  volumeClaimTemplates:
  - metadata:
      name: mycat-pvc
      namespace: mt-math
    spec:
      accessModes: [ "ReadWriteMany" ]
      resources:
        requests:
          storage: 210M

4.文件列表

afb72fb0af003914e2888bf00f7f2242aad.jpg

k8s部署mycat集群记录_第1张图片

进入一个容器测试:mycat

kubectl exec -it web-0 /bin/bash -n mt-math
mysql -uroot -p123456 -P8066 -hwylpod-mycat-1.db-proxy.mt-math -e "show databases;"
mysql -uroot -p123456 -P8066 -hwylpod-mycat-1.db-proxy.mt-math -e "show variables like 'server_id';"

k8s部署mycat集群记录_第2张图片

k8s部署mycat集群记录_第3张图片

转载于:https://my.oschina.net/wangyunlong/blog/3059389

你可能感兴趣的:(数据库,运维,网络)