List item

K8s安装Mysql

1.准备好image 本人提供阿里云镜像仓库 mysql8.02. 制作 configmap 存储配置文件准备pv pvc准备STS

1.准备好image 本人提供阿里云镜像仓库 mysql8.0

registry.cn-shenzhen.aliyuncs.com/dylan-ns/mysql:8.0

2. 制作 configmap 存储配置文件

mysql的默认配置是 /etc/mysql/my.cnf docker 启动 mysql的指令 docker run -p 3306:3306 --name mysql -v /mydata/log:/var/log/mysql -v /mydata/data: /var/lib/mysql -v /mydata/conf: /etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=root –restart=always -d mysql:8.0

apiVersion: v1 data: my.cnf: |+ [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 # Settings user and group are ignored when systemd is used. # If you need to run mysqld under a different user or group, # customize your systemd unit file for mariadb according to the # instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]

log-error=/var/log/mariadb/mariadb.log

pid-file=/var/run/mariadb/mariadb.pid

#

# include all files from the config directory

#

!includedir /etc/my.cnf.d

apiVersion: v1 data: my.cnf: |+ [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 # Settings user and group are ignored when systemd is used. # If you need to run mysqld under a different user or group, # customize your systemd unit file for mariadb according to the # instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]

log-error=/var/log/mariadb/mariadb.log

pid-file=/var/run/mariadb/mariadb.pid

#

# include all files from the config directory

#

!includedir /etc/my.cnf.d

kind: ConfigMap metadata: name: mysql-conf namespace: ruoyi

准备pv pvc

pv apiVersion: v1 kind: PersistentVolume metadata: name: mysql-pv spec: accessModes: - ReadWriteOnce capacity: storage: 5Gi claimRef: apiVersion: v1 kind: PersistentVolumeClaim name: mysql-pvc namespace: ruoyi nfs: path: /data/nfs/mysql server: 192.168.229.205 persistentVolumeReclaimPolicy: Retain volumeMode: Filesystem

pvc apiVersion: v1 kind: PersistentVolumeClaim metadata: name: mysql-pvc namespace: ruoyi spec: accessModes: - ReadWriteOnce resources: requests: storage: 5Gi storageClassName: ‘’ volumeMode: Filesystem volumeName: mysql-pv status: accessModes: - ReadWriteOnce capacity: storage: 5Gi

准备STS

apiVersion: apps/v1 kind: StatefulSet metadata: annotations: field.cattle.io/publicEndpoints: ‘null’ creationTimestamp: ‘2023-12-25T14:33:14Z’ generation: 1 labels: workload.user.cattle.io/workloadselector: apps.statefulset-ruoyi-mysql-svc managedFields: - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:field.cattle.io/publicEndpoints: {} f:labels: .: {} f:workload.user.cattle.io/workloadselector: {} f:spec: f:podManagementPolicy: {} f:replicas: {} f:revisionHistoryLimit: {} f:selector: {} f:serviceName: {} f:template: f:metadata: f:labels: .: {} f:app: {} f:workload.user.cattle.io/workloadselector: {} f:namespace: {} f:spec: f:affinity: {} f:containers: k:{“name”:“mysql”}: .: {} f:env: .: {} k:{“name”:“MYSQL_ROOT_PASSWORD”}: .: {} f:name: {} f:value: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:ports: .: {} k:{“containerPort”:3306,“protocol”:“TCP”}: .: {} f:containerPort: {} f:name: {} f:protocol: {} f:resources: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:privileged: {} f:readOnlyRootFilesystem: {} f:runAsNonRoot: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{“mountPath”:“/etc/my.cnf”}: .: {} f:mountPath: {} f:name: {} f:subPath: {} k:{“mountPath”:“/var/lib/mysql”}: .: {} f:mountPath: {} f:name: {} f:dnsPolicy: {} f:imagePullSecrets: .: {} k:{“name”:“docker-secret-aliyun”}: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{“name”:“mysql-cm”}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:name: {} k:{“name”:“mysql-pv”}: .: {} f:name: {} f:persistentVolumeClaim: .: {} f:claimName: {} f:updateStrategy: f:rollingUpdate: .: {} f:partition: {} f:type: {} manager: rancher operation: Update time: ‘2023-12-25T15:36:34Z’ - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:status: f:availableReplicas: {} f:collisionCount: {} f:currentReplicas: {} f:currentRevision: {} f:observedGeneration: {} f:readyReplicas: {} f:replicas: {} f:updateRevision: {} f:updatedReplicas: {} manager: kube-controller-manager operation: Update subresource: status time: ‘2024-04-06T02:36:00Z’ name: mysql-svc namespace: ruoyi resourceVersion: ‘2499227’ uid: 7b6ed14c-3d62-419c-b18a-33afc6f6f469 spec: podManagementPolicy: OrderedReady replicas: 1 revisionHistoryLimit: 10 selector: matchLabels: workload.user.cattle.io/workloadselector: apps.statefulset-ruoyi-mysql-svc serviceName: mysql-svc-hls template: metadata: creationTimestamp: null labels: app: mysql workload.user.cattle.io/workloadselector: apps.statefulset-ruoyi-mysql-svc namespace: ruoyi spec: affinity: {} containers: - env: - name: MYSQL_ROOT_PASSWORD value: root image: registry.cn-shenzhen.aliyuncs.com/dylan-ns/mysql:8.0 imagePullPolicy: IfNotPresent name: mysql ports: - containerPort: 3306 name: 3306tcp protocol: TCP resources: {} securityContext: allowPrivilegeEscalation: false privileged: false readOnlyRootFilesystem: false runAsNonRoot: false terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /var/lib/mysql name: mysql-pv - mountPath: /etc/my.cnf name: mysql-cm subPath: my.cnf dnsPolicy: ClusterFirst imagePullSecrets: - name: docker-secret-aliyun restartPolicy: Always schedulerName: default-scheduler securityContext: {} terminationGracePeriodSeconds: 30 volumes: - name: mysql-pv persistentVolumeClaim: claimName: mysql-pvc - configMap: defaultMode: 420 name: mysql-conf name: mysql-cm updateStrategy: rollingUpdate: partition: 0 type: RollingUpdate status: availableReplicas: 1 collisionCount: 0 currentReplicas: 1 currentRevision: mysql-svc-6f68bb5cb8 observedGeneration: 1 readyReplicas: 1 replicas: 1 updateRevision: mysql-svc-6f68bb5cb8 updatedReplicas: 1

文章链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: