Kubernetes Dashboard on Ubuntu 16.04安装记录
Kubernetes Dashboard on Ubuntu 16.04安装记录
- 以下内容在Kubernetes 1.9.3 + Ubuntu 16.04.4(Server & Desktop)上试验通过。
Kubernetes Dashboard(https://github.com/kubernetes/dashboard)是Kubernetes的Web UI管理工具,可以 支持多种K8s运行环境,在Docker for Mac上可以快速安装使用(https://my.oschina.net/u/2306127/blog/1606599),但在Ubuntu上有一些区别,这里是安装过程的记录。
1、安装flannel网络驱动
执行下面的命令,安装flannel网络驱动(是不同pod互访必须的驱动,可选其它的网络驱动):
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
!!!安装flannel网络出现pending挂起问题(podCidr参数丢失,即便在kubeadm运行时已指定):
#查看日志: kubectl get pods --namespace kube-system kubectl --namespace kube-system logs kube-flannel-ds-bvxd2 #上面的kube-flannel-ds-bvxd2为flannel的pod名称,根据get pods返回的名称输入。 #编辑 /etc/kubernetes/manifests/kube-controller-manager.yaml 在command节,加入: - --allocate-node-cidrs=true - --cluster-cidr=10.244.0.0/16 然后systemctl restart kubelet即可。
-
该问题解决办法的详细参考:https://github.com/coreos/flannel/issues/728
2、安装Dashboard pod
运行下面的命令,安装Dashboard service pod:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml
注意:
- 自dashboard 1.10.0版出来后,安装程序改为:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.8.3/src/deploy/recommended/kubernetes-dashboard.yaml
- 如果想要安装1.10.0,则为(目前镜像还没有,装不了):
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.0/src/deploy/recommended/kubernetes-dashboard.yaml
查看安装结果情况:
kubectl get pod --namespaces kube-system
- 如果出现pending,可以尝试将镜像单独拉取下来,方法如下:
docker pull k8s.gcr.io/kubernetes-dashboard-amd64:v1.8.3
3、建立账号和授权
将下面的内容保存为文件,如dashboard-rbac.yaml。
apiVersion: v1 kind: ServiceAccount metadata: name: dashboard namespace: kube-system --- kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: dashboard subjects: - kind: ServiceAccount name: dashboard namespace: kube-system roleRef: kind: ClusterRole name: cluster-admin apiGroup: rbac.authorization.k8s.io
然后执行安装(所建立的账号为dashboard):
kubectl create -f dashboard-rbac.yaml
如果创建失败,可以使用kubectl delete sa/podid-xxx --all-namespaces的方式删除,再重新运行上面的yaml文件进行安装。
- 注意:需要将sa和clusterrolebindings里的账号同时删除。如下所示:
kubectl delete sa/dashboard --namespace kube-system kubectl delete clusterrolebindings/dashboard --namespace kube-system
查看账号是否成功建立:
kubectl get sa --all-namespaces
4、Dashboard浏览器登录
4.1 启动Dashboard的Web服务
可以使用端口转发或者kubelet内置的Web服务来提供后台服务。
- 端口转发,外部可访问。
kubectl port-forward kubernetes-dashboard-7798c48646-wkgk4 8443:8443 --namespace=kube-system &
- 内置服务,只能本机访问。
kubectl proxy
打开浏览器,输入下面的URL地址,点击 Sign in
按钮进入登录界面。
- http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/。推荐使用。
- 或 http://localhost:8001/ui。已过时,不推荐使用。
4.2 获得登录授权码
获得登录授权的Token,运行:
kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep dashboard | awk '{print $1}')
返回结果如下所示:
Name: dashboard-token-kl5ns Namespace: kube-system Labels: <none> Annotations: kubernetes.io/service-account.name=dashboard kubernetes.io/service-account.uid=5832bfe3-219f-11e8-982a-0800275005f0 Type: kubernetes.io/service-account-token Data ==== namespace: 11 bytes token: eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkYXNoYm9hcmQtdG9rZW4ta2w1bnMiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGFzaGJvYXJkIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiNTgzMmJmZTMtMjE5Zi0xMWU4LTk4MmEtMDgwMDI3NTAwNWYwIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOmRhc2hib2FyZCJ9.OIo391SDxMDlnzHF0PYbAUNnS_QK9vdbyCx8ZBy3DAdBpBKaKq3U01sPX6H8w_UzP96Mu3Hhh3Xu8ar5nMi5AZLYcct9zR3LepOBdFTQ_YNTJNOjsqMuyD-dWYx6NoQW5lARRtjWSO2UAjrj7Mz4NsfWy8JDUEZZJQ31rtog-Bxgp8K_nxtJiCdROvvd6eM7zNEYOzxYJavsKARyGfJcBRZ6OgxfnH0-8PpwbMEy9qpIQw_sfxVPEaZ-z_y06CX6vbps_-JsFSBDjpVmQQBsNsBxz3Dwm0E8_T9V5z9T13HqUccuGydgp7bYz4PEbDBSD5-xbOIniBwniP3ak1mn_w ca.crt: 1025 bytes
将上面的token内容拷贝下来,然后进入Web界面的 token
,复制到Enter Token下面的编辑框中。
4.3 使用Kubernetes Dashboard
Kubernetes Dashboard运行起来的界面如下,可以查看信息,管理各种服务。
- 更多参考:
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
kubernetes资源对象--RC和RS
Replication Controller(RC) 应用托管在K8S后,K8S需要保证应用能够持续运行,这是RC的工作内容。 主要功能 确保pod数量:RC用来管理正常运行Pod数量,一个RC可以由一个或多个Pod组成,在RC被创建后,系统会 根据定义好的副本数来创建Pod数量。在运行过程中,如果Pod数量小于定义的,就会重启停止的或重新分配Pod,反之则杀死多余的。 确保pod健康:当pod不健康,运行出错或者无法提供服务时,RC也会杀死不健康的pod,重新创建新的。 弹性伸缩 :在业务高峰或者低峰期的时候,可以通过RC动态的调整pod的数量来提高资源的利用率。同时,配置相应的监控功能(Hroizontal Pod Autoscaler),会定时自动从监控平台获取RC关联pod的整体资源使用情况,做到自动伸缩。 滚动升级:滚动升级为一种平滑的升级方式,通过逐步替换的策略,保证整体系统的稳定,在初始化升级的时候就可以及时发现和解决问题,避免问题不断扩大。 弹性伸缩 弹性伸缩是指适应负载变化,以弹性可伸缩的方式提供资源。反映到K8S中,指的是可根据负载的高低动态调整Pod的副本数量。调...
- 下一篇
在Openstack上创建并访问Kubernetes集群
第一部分:创建集群 在Openstack部署Kubernetes集群运行Nginx容器的步骤,其中包括: 利用Murano部署Kubernetes集群 配置Openstack的安全性使Kubernetes集群可 以在Openstack使用 下载并配置kubernetes客户端 创建Kubernetes应用程序 在Kubernetes上运行应用程序 现在让我们开始: 利用Murano创建Kubernetes集群 第一步是创建kubernetes集群。有几种方法都可以做到这一点,但是最简单的方式是通过部署Mirantis Openstack平台与Murano组件实现。 导入Kubernetes集群应用 第一步在Openstack社区的应用目录中获取Kubernetes集群应用,遵循以下步骤: 1、登录Horizon,进入Applications->Manage->Packages. 2、进入社区应用目录并且选择Murano Apps->Kubernetes Cluster获取Kubernetes集群应用,找到应用包本身的URL:http://storage.apps.op...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- 设置Eclipse缩进为4个空格,增强代码规范
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Red5直播服务器,属于Java语言的直播服务器