mysql 單機 部署
阿新 • • 發佈:2021-06-20
Deployment
apiVersion: apps/v1 # apiserver的版本 kind: Deployment # 副本控制器deployment,管理pod和RS metadata: name: mysql # deployment的名稱,全域性唯一 spec: replicas: 1 # Pod副本期待數量 selector: matchLabels: # 定義RS的標籤 app: mysql # 符合目標的Pod擁有此標籤 strategy: # 定義升級的策略 type: RollingUpdate # 滾動升級,逐步替換的策略 template: # 根據此模板建立Pod的副本(例項) metadata: labels: app: mysql # Pod副本的標籤,對應RS的Selector spec: nodeName: my-mysql-node # 指定pod執行在的node containers: # Pod裡容器的定義部分 - name: mysql # 容器的名稱 image: mysql:8.0.24 # 容器對應的docker映象 volumeMounts: # 容器內掛載點的定義部分 - name: time-zone # 容器內掛載點名稱 mountPath: /etc/localtime # 容器內掛載點路徑,可以是檔案或目錄 - name: mysql-data mountPath: /var/lib/mysql # 容器內mysql的資料目錄 - name: mysql-logs mountPath: /var/log/mysql # 容器內mysql的日誌目錄 ports: - containerPort: 3306 # 容器暴露的埠號 env: # 寫入到容器內的環境容量 - name: MYSQL_ROOT_PASSWORD # 定義了一個mysql的root密碼的變數 value: "123456" volumes: # 本地需要掛載到容器裡的資料卷定義部分 - name: time-zone # 資料卷名稱,需要與容器內掛載點名稱一致 hostPath: path: /etc/localtime # 掛載到容器裡的路徑,將localtime檔案掛載到容器裡,可讓容器使用本地的時區 - name: mysql-data hostPath: path: /ley/data/mysql/data # 本地存放mysql資料的目錄 - name: mysql-logs hostPath: path: /ley/data/mysql/logs # 本地存入mysql日誌的目錄
Service
apiVersion: v1
kind: Service
metadata:
name: mysql-service
spec:
type: NodePort
ports:
- port: 3306
targetPort: 3306
nodePort: 30006
selector:
app: mysql
Command
kubectl apply -f mysql-deployment.yaml
kubectl apply -f mysql-service.yaml
參考 https://www.cnblogs.com/yspworld/p/13535018.html