zoukankan      html  css  js  c++  java
  • 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 容器暴露到主机的端口)

    鸡肉是我的最爱!
  • 相关阅读:
    15--k8s之安全认证
    14--k8s之StorageClass,ConfigMap,Secret
    13--基本存储、高级存储、存储配置
    10--k8s之数据持久化
    9--k8s之Endpoints、健康服务检查、高可用
    8--k8s之service和ingress详解
    7--k8s之Pod控制器详解
    6--k8s之Pod结构、配置、生命周期、调度
    索引原理和慢查询优化
    pymysql模块及sql注入
  • 原文地址:https://www.cnblogs.com/laochiji/p/13813743.html
Copyright © 2011-2022 走看看