kind 搭建k8s+dashboard的記錄


1.KIND官方文檔:https://kind.sigs.k8s.io/docs/user/quick-start/

(1)安裝go:https://golang.org/dl/

(2)安裝kind

(3)安裝docker:https://docs.docker.com/engine/install/ubuntu/

  (4) 在主機上作為工具去操作kind中的kubectl, 需要安裝kubuctl,教程:  https://www.kubernetes.org.cn/installkubectl  

2.用kind創建K8S集群:

(1)編寫好 yaml文件:如:kind-example-config.yaml

 

 

(2)kind create cluster --config kind-example-config.yaml  --name kind1  創建集群

 

3.安裝dashboard:

(1)參考安裝教程:https://github.com/kubernetes/dashboard:

       1。。下載文件:wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.4/aio/deploy/recommended.yaml

    2.。。修改文件,映射端口:

            

 

   3.。。部署文件:

    kubectl apply -f recommended.yaml

(2)通過之間創建kind集群的時候映射的端口如3004--》30004,我們就可以通過http://主機IP:3004訪問dashboard了

  登錄需要token,生成方法是:https://github.com/kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.md

 

3.部署mysql+adminer到集群

(1)編寫好yml文件:如mysqladminer.yml

apiVersion: v1
kind: ReplicationController
metadata:
  name: mysql-rc
  labels:
    name: mysql-rc
spec:
  replicas: 1
  selector:
    name: mysql-pod
  template:
    metadata:
      labels: 
        name: mysql-pod
    spec:
      containers:
        - name: mysql
          image: mysql
          args: 
          - "--default-authentication-plugin=mysql_native_password"
          imagePullPolicy: IfNotPresent
          ports:
          - containerPort: 3306
          env:
          - name: MYSQL_ROOT_PASSWORD
            value: "example"
        - name: adminer
          image: adminer
          imagePullPolicy: IfNotPresent
          ports:
          - containerPort: 8080

  

(2)kubectl apply -f mysqladminer.yml

(3)編寫svc  yml:如svc_mysqladminer.yml.  也可以與上面的文件寫在一起一起部署

apiVersion: v1
kind: Service
metadata:
  name: mysql-svc
  labels: 
    name: mysql-svc
spec:
  type: NodePort
  ports:
  - port: 3306
    protocol: TCP
    targetPort: 3306
    name: mysql
    nodePort: 30001
  - port: 8080
    protocol: TCP
    targetPort: 8080
    name: adminer
    nodePort: 30002

  selector:
    name: mysql-pod

 (4)部署svc  :kubectl apply -f svc_mysqladminer.yml

      (5) 訪問adminer 主機IP:映射端口30002    (kind 容器暴露到主機的端口)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM