Webインターフェイス(ダッシュボード)
すべての操作はコマンドラインツールkubectlが完了kubernetesに行われる前に、より豊かなユーザー体験を提供するために、kubernetesもを通じてWebベースのユーザインターフェイス(ダッシュボード)を開発しました。ユーザーは、展開のダッシュボードアプリケーションコンテナを使用することができ、それはまた、アプリケーションの状態を監視し、トラブルシューティング実行と管理は、さまざまなリソースをkubernetesすることができます。
kubernetesでダッシュボードには、クラスタアプリケーションの状態を確認することができます(などの展開、仕事、Daemonsetなど)様々なkubernetesリソースを作成および変更することができ、ユーザーは、ローリング・アップグレードを実行する、ポッドまたはウィザードを使用しての展開のための伸縮性再起動することができます新しいアプリケーションを作成します。
kubernetesダッシュボードがkubectlのほとんどの機能を提供し、言うことができます。
ダッシュボードのリソースのステータス情報と、すべてのエラーメッセージkubernetesクラスタを発揮しながら。
公式参考資料:https://kubernetes.io/zh/docs/tasks/access-application-cluster/web-ui-dashboard/
GitHubのプロジェクトダウンロード:https://github.com/kubernetes/dashboard
まず、展開のダッシュボードUI
次のコマンドを経由してダウンロードすることができ、デフォルトのダッシュボードで展開されていないkubernetes、:
#将yaml文件下载到本地:
[root@master dashboard]# wget https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.0/src/deploy/recommended/kubernetes-dashboard.yaml
#修正YAMLファイル:
デフォルトのファイルが指定されたYAMLダウンロードが海外鏡画像、家庭内ネットワーク環境の制限であるので、我々はアリクラウドミラーステーションでダウンロードしてください。
サービスはNodePortタイプに変更された外部アプリケーションを使用することを容易にするために、CLUSTERIPタイプですので。
##保存して終了、-fは、ダッシュボードを作成適用kubectl実行します。
##查看pod和service的状态(dashboard会在kube-system 命令空间中创建自己的pod和service):
[root@master dashboard]# kubectl get pod -n kube-system | grep dashboard
kubernetes-dashboard-6cfb7d8f54-rp9nd 1/1 Running 0 2m23s
[root@master dashboard]# kubectl get svc -n kube-system
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP,9153/TCP 94d
kubernetes-dashboard NodePort 10.108.35.182 <none> 443:32134/TCP 3m8s
#此时已经为service分配了32134端口,注意是443端口(https)
二,访问Dashboard UI
通过火狐浏览器访问网址:https://172.16.1.30:32134/ 进入后界面如下:
可以看到Dashboard支持kubeconfig和Token两种认证方式,本文选用Token的方式登录,kubeconfig登陆方式可以参考文档:http://note.youdao.com/noteshare?id=b0523244024d563cdc1bf7c8f7d6083c&sub=A8921821A7BE4CE4BC36B1DC86966460
通过Token的方式登录:
1)创建一个dashboard管理用户:
[root@master dashboard]# kubectl create serviceaccount dashboard-admin -n kube-system
serviceaccount/dashboard-admin created
2)绑定用户为集群管理用户:
[root@master dashboard]# kubectl create clusterrolebinding dashboard-cluster-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin
clusterrolebinding.rbac.authorization.k8s.io/dashboard-cluster-admin created
3)获取用户的Token:
[root@master dashboard]# kubectl get secrets -n kube-system | grep dashboard-admin
dashboard-admin-token-4gdsc kubernetes.io/service-account-token 3 4m17s
4)查看该token的详细信息:
[root@master dashboard]# kubectl describe secrets -n kube-system dashboard-admin-token-4gdsc
##把获取到的Token复制到登录界面的Token输入框中:
##登陆成功后的web界面如下所示:
三, 使用Dashboard
1,Dashboard界面结构
Dashboard的界面很简洁,分为三个大的区域:
1)顶部操作区:在这里用户可以搜索集群中的资源,创建资源或退出。
2)左边导航菜单: 通过导航菜单可以查看和管理集群中的各种资源,菜单项按照资源的层级分为两类:
Cluster 级别的资源:
NameSpace 级别的资源:
默认显示的是default 的NameSpace,大家可以根据对应的Namespace进行切换。
3)中间主体区: 在导航菜单中点击了某类资源,中间主体区就会显示该资源的所有实例,比如点击service资源
2、一般的な使用シナリオ
いくつかのダッシュボードの次の練習典型的な使用シナリオ:
1、展開展開:
1)運転の上部エリアでボタンをCREATE +クリック:
ユーザーが直接使用すると、アプリケーション名、画像、部数などの上を展開したい情報を入力することができます。ユーザーをそれはYAMLファイルをアップロードする場合YAML設定ファイルはまた、あなたは、リソースの任意のタイプだけでなく、展開を作成することができます。
2、動作させるためのオンラインリソース:
リソースごとにさまざまな操作を実行するために、ユーザーが(など、削除、表示、編集、)右にあるドロップダウンメニューをクリックすることができます
##例えば、同じ効果kubectl編集、閲覧/編集YAMLが直接すぐに保存した後に有効、リソースの割り当てを変更することができますをクリックしてください。
3、リソースの詳細を表示
リソース・インスタンスの名前をクリックして、あなたは効果は同じことを説明kubectl、詳細情報を表示することができます。
4、ポッドログ参照
ポッドまたは親リソース(DaemonSet、さらにreplicaSetなど)のページで「ログ」ボタンの上にクリックして、あなたは(のポッドと異なるコンテナのビュー・ログにビューア)ポッドログを見ることができる、という効果kubectlログなどのコマンドライン。
概要:
上記kubernetesダッシュボードのインストールおよび使用することです。日管理に作業日のほとんどを完了するためのダッシュボードには、あなたは、コマンドラインツールのkubectlを補完することができます。