インストール
1. KubernetesダッシュボードがK8SクラスタのWeb UIの管理ツールであり、コードはgithubの上でホストされて、
アドレス:https://github.com/kubernetes/dashboard
2. インストール
wget https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml
アクセス
する
には、次の3つの方法があります。①ノードアドレスを介したアクセス構成ファイルに次のフィールドを追加します。3
。デプロイメント
kubectl create -f kubernetes-dashboard.yaml
4.外部ネットワークアクセスポートを表示します
kubectl get svc kubernetes-dashboard -n kube-system
アクセスURL:
https :
//13x.1xx.48.xxx :32740 /②Kube-proxyAPIを使用してプロキシフォームにアクセスします
kubectl proxy --address="0.0.0.0" --accept-hosts='^localhost$,^127\.0\.0\.1$,^172\.24\.4'
http://172.24.4.15:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#/login
プロキシ経由でサービスに接続する場合は、特定のを使用する必要がありますプロキシURLの形式:
http://<apiserver-address>/api/v1/namespaces/<service-namespace>/services/[https:]<service-name>:[<port-name>]/proxy
- apiserver-addressは、kubectlproxyコマンドを入力したマシンのアドレスです。
- ポートの名前を指定しない場合、port-nameはオプションです
- プロトコルはオプションです。httpを使用している場合
は、ピットがあります。ポート名を使用しない場合でも、サービス名とポート名の間のコロンに注意してください。サービス名の後のコロンを小さくすることはできません。公式ウェブサイトのドキュメントを参照して
ください不正なプロキシアドレスマスターノードIPを変更してください
③ポート転送を介したアクセス
kubectlport-forward -n kubernetes-dashboard service / kubernetes-dashboard 8080:443 --address = 0.0.0.0
次に、クラスター内の任意のノードIPに直接アクセスし、上記のポート31694を追加して、ダッシュボードページを開きます。
ここでは、2番目の方法を選択します。
認証
ダッシュボードにログインすると、Kubeconfigとtokenの2つの認証方法がサポートされます。Kubeconfigもトークンフィールドに依存しているため、トークンを生成する手順が不可欠です。
トークンを生成する
管理者ユーザーを作成して管理者ロールバインディングを付与し、次のyamlファイルを使用して管理者ユーザーを作成して管理者権限を付与すると、トークンを介してdashbaordにログインできます。この認証方法は、実際にはのID認証を介して行われます。サービスアカウントと上記のBearerトークンリクエストAPIサーバーが実装されています。Kubernetesでの認証を参照してください。
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
name: admin
annotations:
rbac.authorization.kubernetes.io/autoupdate: "true"
roleRef:
kind: ClusterRole
name: cluster-admin
apiGroup: rbac.authorization.k8s.io
subjects:
- kind: ServiceAccount
name: admin
namespace: kube-system
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin
namespace: kube-system
labels:
kubernetes.io/cluster-service: "true"
addonmanager.kubernetes.io/mode: Reconcile
[root@k8s-master k8s-auto]# kubectl apply -f kubernetes_token.yaml
clusterrolebinding.rbac.authorization.k8s.io/admin created
serviceaccount/admin created
kubectl get secret admin-token-wkmhh -o jsonpath={
.data.token} -n kube-system |base64 -d;
上記のコマンドで生成されたトークンを取得してログインします。
これは秘密鍵が正しくないためです。確認して変更し、再試行してください。
これは、要求されたリソースが見つからないためです。マスターノードが1つしかないため、ここにいます。他のサービスはありません。