kubeadmを使用して単一マシンkubernetes 1.15クラスタを迅速に構築



最近k 8 sを勉強して、学習の第一歩はもちろん手動でそれを構築して、構築の過程の中でとてもでこぼこででこぼこで、だからブログを書いてすべての仕事と出会った問題と解決方法を記録します.
1.構築前の準備
  • ファイアウォール
  • を閉じる
    systemctl stop firewalld
    systemctl disable firewalld
  • SELinux
  • を無効にする
    setenforce 0

    ファイル/etc/selinux/configを編集し、SELINUXをdisabledに変更します.
    sed -i 's/SELINUX=permissive/SELINUX=disabled/' /etc/sysconfig/selinux
    
    #SELINUX=disabled
  • システムswap
  • を閉じる
    Kubernetes 1.8はシステムのSwapを閉じることを要求し始め、閉じなければデフォルトの構成ではkubeletは起動できません.方法1は、kubeletの起動パラメータであるfail-swap-on=falseによってこの制限を変更する.方法2、システムのSwapを閉じる.
    swapoff -a

    /etc/fstabファイルを修正し、SWAPの自動マウントを注記し、free-mを使用してswapが閉じていることを確認します.
    # swap 
    [root@localhost /]# sed -i 's/.*swap.*/#&/' /etc/fstab
    
    #/dev/mapper/centos-swap swap                    swap    defaults        0 0
                                                                    
    [root@localhost /]# free -m
                  total        used        free      shared  buff/cache   available
    Mem:            962         154         446           6         361         612
    Swap:             0           0           0

    2.yumソースの設定
    まず/etc/yum.repos.d/ディレクトリに行って、そのディレクトリの下のすべてのrepoファイルを削除します(バックアップを先に行います)
    rm -f /etc/yum.repos.d/

    ダウンロードcentosベースyumソース構成(ここではアリクラウドのミラーリングを使用)
    curl -o CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

    kubernetesのyumソースの構成
    cat < /etc/yum.repos.d/kubernetes.repo
    [kubernetes]
    name=Kubernetes
    baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
    enabled=1
    gpgcheck=0
    repo_gpgcheck=0
    gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
            http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
    EOF

    次のコマンドを実行してyumソースキャッシュをリフレッシュします.
    # yum clean all  
    # yum makecache  
    # yum repolist

    ソース構成が正しいことを示すこのリストを取得します.
    [root@MiWiFi-R1CM-srv yum.repos.d]# yum repolist
     :fastestmirror
    Loading mirror speeds from cached hostfile
                                                                                                                                                                          
    base/7/x86_64                                                                        CentOS-7 - Base - 163.com                                                                 10,019
    docker-ce-stable/x86_64                                                              Docker CE Stable - x86_64                                                                     28
    extras/7/x86_64                                                                      CentOS-7 - Extras - 163.com                                                                  321
    kubernetes                                                                           Kubernetes                                                                                   299
    updates/7/x86_64                                                                     CentOS-7 - Updates - 163.com                                                                 628
    repolist: 11,295

    3.dockerのインストール
    yum install -y docker-ce

    バージョンに要求がある場合は、先に実行できます.
    # yum list docker-ce --showduplicates | sort -r
     :fastestmirror
     
     
    Loading mirror speeds from cached hostfile
    docker-ce.x86_64            3:18.09.1-3.el7                    docker-ce-stable 
    docker-ce.x86_64            3:18.09.1-3.el7                    @docker-ce-stable
    docker-ce.x86_64            3:18.09.0-3.el7                    docker-ce-stable 
    docker-ce.x86_64            18.06.1.ce-3.el7                   docker-ce-stable 
    docker-ce.x86_64            18.06.0.ce-3.el7                   docker-ce-stable 
    docker-ce.x86_64            18.03.1.ce-1.el7.centos            docker-ce-stable 
    docker-ce.x86_64            18.03.0.ce-1.el7.centos            docker-ce-stable 
    docker-ce.x86_64            17.12.1.ce-1.el7.centos            docker-ce-stable 
    docker-ce.x86_64            17.12.0.ce-1.el7.centos            docker-ce-stable 
    docker-ce.x86_64            17.09.1.ce-1.el7.centos            docker-ce-stable 
    docker-ce.x86_64            17.09.0.ce-1.el7.centos            docker-ce-stable 
    docker-ce.x86_64            17.06.2.ce-1.el7.centos            docker-ce-stable 
    docker-ce.x86_64            17.06.1.ce-1.el7.centos            docker-ce-stable 
    docker-ce.x86_64            17.06.0.ce-1.el7.centos            docker-ce-stable 
    docker-ce.x86_64            17.03.3.ce-1.el7                   docker-ce-stable 
    docker-ce.x86_64            17.03.2.ce-1.el7.centos            docker-ce-stable 
    docker-ce.x86_64            17.03.1.ce-1.el7.centos            docker-ce-stable 
    docker-ce.x86_64            17.03.0.ce-1.el7.centos            docker-ce-stable
    
     , 
    yum install -y docker-ce-

    インストール完了後、
    # systemctl start docker
    # systemctl enable docker
    # docker info
    Containers: 24
     Running: 21
     Paused: 0
     Stopped: 3
    Images: 11
    Server Version: 18.09.1
    Storage Driver: overlay2
     Backing Filesystem: xfs
     Supports d_type: true
     Native Overlay Diff: true
    Logging Driver: json-file
    Cgroup Driver: cgroupfs
    Plugins:
     Volume: local
     Network: bridge host macvlan null overlay
     Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
    Swarm: inactive
    Runtimes: runc
    Default Runtime: runc
    Init Binary: docker-init
    containerd version: 9754871865f7fe2f4e74d43e2fc7ccd237edcbce
    runc version: 96ec2177ae841256168fcf76954f7177af9446eb
    init version: fec3683
    Security Options:
     seccomp
      Profile: default
    Kernel Version: 3.10.0-957.1.3.el7.x86_64
    Operating System: CentOS Linux 7 (Core)
    OSType: linux
    Architecture: x86_64
    CPUs: 2
    Total Memory: 1.795GiB
    Name: MiWiFi-R1CM-srv
    ID: DSTM:KH2I:Y4UV:SUPX:WIP4:ZV4C:WTNO:VMZR:4OKK:HM3G:3YFS:FXMY
    Docker Root Dir: /var/lib/docker
    Debug Mode (client): false
    Debug Mode (server): false
    Registry: https://index.docker.io/v1/
    Labels:
    Experimental: false
    Insecure Registries:
     127.0.0.0/8
    Live Restore Enabled: false
    Product License: Community Engine
    
    WARNING: bridge-nf-call-ip6tables is disabled

     
    このような説明が正しくインストールされています
    4.kubeadm取付k 8 s
    現在、kubeadmが構築したk 8クラスタmasterは単一ノードであり、高可用性を実現するには自分でetcdクラスタを手動で構築する必要がある.
    以前はkubernetesのyumソースが設定されていたので、実行するだけで
    yum install -y kubeadm

    システムは最新版のkubeadmを自動的にインストールしてくれます(私がインストールした時は1.13.1でした)、全部でkubelet、kubeadm、kubectl、kubernetes-cniの4つのプログラムをインストールします.
  • kubeadm:k 8クラスタのワンタッチ配置ツールは、k 8の各種コアコンポーネントとプラグインをpodで配置することによって、インストールプロセス
  • を簡素化する.
  • kubelet:各ノード上で実行されるnode agent,k 8クラスタはkubeletによって各ノード上のコンテナを本格的に操作し,ホストホストの各種資源を直接操作する必要があるためpodに置かず,サービス形式でシステム内に装着する
  • .
  • kubectl:kubernetesのコマンドラインツールは、api-serverに接続することでk 8に対する各種操作
  • を完了する.
  • kubernetes-cni:k 8の仮想ネットワークデバイスは、ホスト上でcni 0ブリッジを仮想化することによってpod間のネットワーク通信を完了し、docker 0と同様の役割を果たす.

  • インストール後、
    kubeadmin init --pod-network-cidr=10.244.0.0/16

    マスターノードの初期化作業を開始し、こちらの--pod-network-cidr=10.244.0.0/16は、k 8のネットワークプラグインに必要な構成情報であり、nodeにサブセグメントを割り当てるために使用されます.こちらのネットワークプラグインはflannelです.
    初期化時にkubeadmは一連の検証を行い、あなたのサーバがkubernetesのインストール条件に合致しているかどうかを検出します.検出結果は[WARNING][ERROR]の2種類に分けられ、以下のような情報(一般的に最初の実行は失敗します.)
    I0112 00:30:18.868179   13025 version.go:94] could not fetch a Kubernetes version from the internet: unable to get URL "https://dl.k8s.io/release/stable-1.txt": Get https://storage.googleapis.com/kubernetes-release/release/stable-1.txt: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
    I0112 00:30:18.868645   13025 version.go:95] falling back to the local client version: v1.15.0
    [init] Using Kubernetes version: v1.15.0
    [preflight] Running pre-flight checks
        [WARNING SystemVerification]: this Docker version is not on the list of validated versions: 18.09.1. Latest validated version: 18.06
        [WARNING Hostname]: hostname "miwifi-r1cm-srv" could not be reached
        [WARNING Hostname]: hostname "miwifi-r1cm-srv": lookup miwifi-r1cm-srv on 192.168.31.1:53: no such host
        [WARNING Service-Kubelet]: kubelet service is not enabled, please run 'systemctl enable kubelet.service'
    error execution phase preflight: [preflight] Some fatal errors occurred:
        [ERROR FileContent--proc-sys-net-bridge-bridge-nf-call-iptables]: /proc/sys/net/bridge/bridge-nf-call-iptables contents are not set to 1
        [ERROR Swap]: running with swap on is not supported. Please disable swap
    [preflight] If you know what you are doing, you can make a check non-fatal with `--ignore-preflight-errors=...`

    引き出せないという意味で、kubeadm initコマンドでデフォルトで使用するdockerミラーウェアハウスはk 8 sです.gcr.io、国内は直接訪問できないので、融通が必要です.手動pullミラーリングが必要です.
    まず、どのミラーを使用する必要があるかを確認します.
    kubeadm config images list
    # 
    k8s.gcr.io/kube-apiserver:v1.12.2
    k8s.gcr.io/kube-controller-manager:v1.12.2
    k8s.gcr.io/kube-scheduler:v1.12.2
    k8s.gcr.io/kube-proxy:v1.12.2
    k8s.gcr.io/pause:3.1
    k8s.gcr.io/etcd:3.2.24
    k8s.gcr.io/coredns:1.2.2

     
    ミラーを再ダウンロードして、あなたのkubeadmに必要なバージョン番号に注意して、ここでも私はコピーしました.
    # , 
    docker pull mirrorgooglecontainers/kube-apiserver-amd64:v1.14.0
    docker pull mirrorgooglecontainers/kube-controller-manager-amd64:v1.14.0
    docker pull mirrorgooglecontainers/kube-scheduler-amd64:v1.14.0
    docker pull mirrorgooglecontainers/kube-proxy-amd64:v1.14.0
    docker pull mirrorgooglecontainers/pause:3.1
    docker pull mirrorgooglecontainers/etcd-amd64:3.3.10
    docker pull coredns/coredns:1.3.1

    ラベルを付け直す
    docker tag mirrorgooglecontainers/kube-apiserver-amd64:v1.14.0 k8s.gcr.io/kube-apiserver:v1.14.0
    docker tag mirrorgooglecontainers/kube-controller-manager-amd64:v1.14.0 k8s.gcr.io/kube-controller-manager:v1.14.0
    docker tag mirrorgooglecontainers/kube-scheduler-amd64:v1.14.0 k8s.gcr.io/kube-scheduler:v1.14.0
    docker tag mirrorgooglecontainers/kube-proxy-amd64:v1.14.0 k8s.gcr.io/kube-proxy:v1.14.0
    docker tag mirrorgooglecontainers/etcd-amd64:3.3.10 k8s.gcr.io/etcd:3.3.10
    docker tag coredns/coredns:1.3.1 k8s.gcr.io/coredns:1.3.1

    ミラーリングが完了したら再実行
    kubeadm init --kubernetes-version=v1.15.0 --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/12

    こんなたくさんのものが現れた
    Your Kubernetes master has initialized successfully!
    
    To start using your cluster, you need to run the following as a regular user:
    
      mkdir -p $HOME/.kube
      sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
      sudo chown $(id -u):$(id -g) $HOME/.kube/config
    
    You should now deploy a pod network to the cluster.
    Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:
      https://kubernetes.io/docs/concepts/cluster-administration/addons/
    
    You can now join any number of machines by running the following on each node
    as root:
    
      kubeadm join 192.168.31.175:6443 --token wde86i.tmjaf7d18v26zg03 --discovery-token-ca-cert-hash sha256:b05fa53d8f8c10fa4159ca499eb91cf11fbb9b27801b7ea9eb7d5066d86ae366

    インストールに成功したことを示します
    kudeadmは、kubelet構成、各種証明書構成、kubeconfig構成、プラグインインストールなど、多くの仕事をしてくれました(これらのものは自分でどのくらいかかるか分かりませんが、どうせkubeadmを使ったことがある人はもう手作業でインストールしたくないと思います).最後の行に注意して、kubeadmは、他のノードがクラスタに参加する必要がある場合は、このコマンドを実行するだけでいいことを示します.クラスタに参加するために必要なtokenが含まれています.同時にkubeadmは、すべてのインストールを完了するには、ネットワークプラグインkubectl apply -f [podnetwork].yamlをインストールする必要があります.また、ネットワークプラグインのインストール方法のウェブサイトも提供します(親切ですね.木あり).同時に実行する必要があることを示します
    mkdir -p $HOME/.kube
    sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    sudo chown $(id -u):$(id -g) $HOME/.kube/config

    関連配置情報をコピーする.kubeのディレクトリです.これはkubectlとapi-server間の認証を構成するために使用されます.他のnodeノードでは、この構成情報をnodeノードの対応するディレクトリにコピーする必要があります.ここで実行します
     
     kubectl get node
    NAME              STATUS   ROLES    AGE     VERSION
    miwifi-r1cm-srv   NotReady    master   4h56m   v1.13.1

    現在のノードがnotreadyの状態であることを示します.焦らないでください.まずkudeadmがインストールしてくれたものを見てみましょう.
    コアコンポーネント
     
    先に紹介したように,kudeadmの考え方は,k 8の主要なコンポーネントを容器化することで実装過程を簡素化することである.この時、k 8クラスタがまだ起きていないのにpodを配置する方法に疑問があるかもしれません.まさか直接docker runを実行しますか?もちろんそれほどlowはありませんが、実はkubeletの実行ルールには、pod定義のyamlファイルを指定ディレクトリの下に置くだけで、このノードのkubeletが起動するとyamlファイルで定義されたpodが自動的に起動する「静的pod」(static pod)という特殊な起動方法があります.このメカニズムから、static podと呼ばれる理由もわかります.これらのpodはスケジューリングできないので、このノードでしか起動できません.podのipアドレスは直接ホストのアドレスです.k 8では、これらの事前定義yamlファイルを置く場所は/etc/kubernetes/manifestsです.見てみましょう.
    [root@MiWiFi-R1CM-srv manifests]# ls -l
      16
    -rw-------. 1 root root 1999 1   12 01:35 etcd.yaml
    -rw-------. 1 root root 2674 1   12 01:35 kube-apiserver.yaml
    -rw-------. 1 root root 2547 1   12 01:35 kube-controller-manager.yaml
    -rw-------. 1 root root 1051 1   12 01:35 kube-scheduler.yaml
    

    この4つがk 8のコアコンポーネントであり、現在のノード上で静的podで動作する
  • etcd:k 8 sのデータベースは、すべてのクラスタ構成情報、鍵、証明書などがこの中に入っているので、生産上は一般的にクラスタになります.冗談ではない
  • を掛けました.
  • kube-apiserver:k 8のrestful apiエントリは、他のすべてのコンポーネントがapi-serverによってkubernetesを操作する様々なリソースであり、k 8の最下層のコンポーネントと言える
  • kube-controller-manager:コンテナpodのライフサイクルを管理する
  • kube-scheduler:podのクラスタ内のスケジューリング
  • を担当する
    実行してみましょう
     kubectl get pods -n kube-system
    NAME                                      READY   STATUS    RESTARTS   AGE
    coredns-86c58d9df4-gbgzx                  0/1     Pending   0          5m28s
    coredns-86c58d9df4-kzljk                  0/1     Pending   0          5m28s
    etcd-miwifi-r1cm-srv                      1/1     Running   0          4m40s
    kube-apiserver-miwifi-r1cm-srv            1/1     Running   0          4m52s
    kube-controller-manager-miwifi-r1cm-srv   1/1     Running   0          5m3s
    kube-proxy-9c8cs                          1/1     Running   0          5m28s
    kube-scheduler-miwifi-r1cm-srv            1/1     Running   0          4m45s
    

     
    kubeadmがインストールしてくれたのは、私が上述したコンポーネントで、podの形でインストールされていることがわかります.同時にcorednsの2つのpodはpending状態であることにも気づくべきです.これは、ネットワークプラグインがまだインストールされていないからです.前述の公式ページの説明に従ってネットワークプラグインをインストールします.こちらはflannelを使っています.インストール方法も簡単です.標準的なk 8式のインストールです.
    kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/bc79dd1505b0c8681ece4de4c0d86c5cd2643275/Documentation/kube-flannel.yml

    インストールが終わったらpodの状態を見てみましょう
    kubectl get pods -n kube-system
    NAME                                      READY   STATUS    RESTARTS   AGE
    coredns-86c58d9df4-gbgzx                  1/1     Running   0          11m
    coredns-86c58d9df4-kzljk                  1/1     Running   0          11m
    etcd-miwifi-r1cm-srv                      1/1     Running   0          11m
    kube-apiserver-miwifi-r1cm-srv            1/1     Running   0          11m
    kube-controller-manager-miwifi-r1cm-srv   1/1     Running   0          11m
    kube-flannel-ds-amd64-kwx59               1/1     Running   0          57s
    kube-proxy-9c8cs                          1/1     Running   0          11m
    kube-scheduler-miwifi-r1cm-srv            1/1     Running   0          11m

    コアコンポーネントの状態を見てみましょう
    kubectl get componentstatus
    NAME                 STATUS    MESSAGE              ERROR
    scheduler            Healthy   ok                   
    controller-manager   Healthy   ok                   
    etcd-0               Healthy   {"health": "true"} 

     
    Nodeの状態はReadyで、私たちのmasterのインストールが成功したことを説明して、これで大成功しました!デフォルトのmasterノードはpodの適用をスケジュールできないので、masterノードに汚点マークを付ける必要があります.
    kubectl taint nodes --all node-role.kubernetes.io/master-

    5.DashBoardのインストール
    k 8プロジェクトは公式のdashboardを提供しています.普段はコマンドラインが多いですが、UIがあるのはいつもいいので、インストール方法を見てみましょう.
    ここにdashboardをインストールしたことがあるなら削除してください.
    kubectl get pods –all-namespaces 
    # pod, dashboard , 
    kubectl delete pod kubernetes-dashboard-latest-3447225518-f39cr –namespace=kube-system 

    もしあなたのdashboardがまた起動したことに気づいたら、それから削除して、それはまた起動して、どうせ無限に再起動します.解決方法:そのpodを完全に削除するにはdeploymentsを削除する必要があります.次のコマンドを実行します.
    kubectl get deployments --all-namespaces
    NAMESPACE     NAME                          DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
    kube-system   kubernetes-dashboard-latest   1         1         1            0           2d
    
    
    kubectl delete deployments kubernetes-dashboard-latest -n kube-system

    そしてdashboardはやっと正常に削除することができます.
    再インストール
    wgetコマンドを使用してkubernetes-dashboardをダウンロードします.yaml
    ヒントwgetコマンドが見つからない場合はwgetをインストールします
    yum install wget

    実行
    wget https://raw.githubusercontent.com/kubernetes/dashboard/master/aio/deploy/recommended/kubernetes-dashboard.yaml
    
    #    spec:
          containers:
          - name: kubernetes-dashboard
            image: k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1
     image 
     :registry.cn-hangzhou.aliyuncs.com/google_containers/kubernetes-dashboard-amd64:v1.10.1
     
    kubectl create -f kubernetes-dashboard.yaml

    インストールが完了したらpod情報を表示
    kubectl get po -n kube-system
    NAME                                      READY   STATUS    RESTARTS   AGE
    coredns-86c58d9df4-gbgzx                  1/1     Running   0          4h45m
    coredns-86c58d9df4-kzljk                  1/1     Running   0          4h45m
    etcd-miwifi-r1cm-srv                      1/1     Running   0          4h44m
    kube-apiserver-miwifi-r1cm-srv            1/1     Running   0          4h44m
    kube-controller-manager-miwifi-r1cm-srv   1/1     Running   0          4h44m
    kube-flannel-ds-amd64-kwx59               1/1     Running   0          4h34m
    kube-proxy-9c8cs                          1/1     Running   0          4h45m
    kube-scheduler-miwifi-r1cm-srv            1/1     Running   0          4h44m
    kubernetes-dashboard-57df4db6b-bn5vn      1/1     Running   0          4h8m
    kubernetes-dashboard-57df4db6b-bn5vnが1つ増え、正常に起動していることがわかります.しかし、セキュリティの観点からdashboardは外部アクセスを提供しておらず、proxy、nodeport、ingressは現在nodeport方式を使用しています.
    kubectl -n kube-system edit service kubernetes-dashboard

    以下に設定
    apiVersion: v1
    kind: Service
    metadata:
      creationTimestamp: "2019-01-11T18:12:43Z"
      labels:
        k8s-app: kubernetes-dashboard
      name: kubernetes-dashboard
      namespace: kube-system
      resourceVersion: "6015"
      selfLink: /api/v1/namespaces/kube-system/services/kubernetes-dashboard
      uid: 7dd0deb6-15cc-11e9-bb65-08002726d64d
    spec:
      clusterIP: 10.102.157.202
      externalTrafficPolicy: Cluster
      ports:
      - nodePort: 30443 # 
        port: 443
        protocol: TCP
        targetPort: 8443
      selector:
        k8s-app: kubernetes-dashboard
      sessionAffinity: None
      type: NodePort # 
    status:
      loadBalancer: {}

     
    dashboardアプリケーションのデフォルトポートは8443です.ここでは30443ポートを指定してマッピングし、外部アクセスインタフェースを提供します.このとき私たちはhttps://ip:30443でdashboardにアクセスすることができます.公式のyamlで作成されたservcieaccountにログインすると、何の権限もありません.すべてforbiddenです.公式にminimalのroleを与えたからです..こちらではテストの便宜上、スーパー管理者のアカウントを直接作成しています.
    nodeノードで作成するには、次の手順に従います.
    vim admin-sa.yaml

    次のように構成されています.
    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: dashboard
      namespace: kube-system
    ---
    kind: ClusterRoleBinding
    apiVersion: rbac.authorization.k8s.io/v1beta1
    metadata:
      name: dashboard
    subjects:
      - kind: ServiceAccount
        name: dashboard
        namespace: kube-system
    roleRef:
      kind: ClusterRole
      name: cluster-admin
      apiGroup: rbac.authorization.k8s.io

    実行:
    kubectl create -f admin-sa.yaml

    上記のadminユーザーの作成が完了すると、次のコマンドで対応するtokenユーザーを取得できます.
    kubectl describe secret dashboard -n kube-system
    
    dashboard-token-s9hqc
    Namespace:    kube-system
    Labels:       
    Annotations:  kubernetes.io/service-account.name: dashboard
                  kubernetes.io/service-account.uid: 63c43e1e-15d6-11e9-bb65-08002726d64d
    
    Type:  kubernetes.io/service-account-token
    
    Data
    ====
    ca.crt:     1025 bytes
    namespace:  11 bytes
    token:      eyJhbGciOiJSUzI1NiIsImtpZC.......
    

    このtokenをログインインタフェースのtoken位置に記入すると、ログインでき、すべての権限があります.
     
     
    これで完成!花撒き终わり!以下は参考サイト
    kubeadmを使用して単一マシンkubernetes 1.13クラスタを迅速に構築
    DashBoard-認証
    kubernetes dashboardアクセスの問題
    Kubernetesの(16)Dashboard認証アクセス
    k 8 sがpodを削除した後に無限にこのpodを再起動する問題を解決します
    kubeadmを使用してkubernetes 1.12.0をインストール
    kubeadm reset操作手順
    Kubeadmを使用してKubernetes(1.12.2)クラスタを構築
    kubeadm--init
    kubeadmがミラーをダウンロードできない問題
    centos 7下kubernetes(5.kubernetes dashboardを配備)