在kubespray
部署kube-dashboard
的配置选项有以下:
通过配置可以对kube-dashboard
做到以下几种改造。
1、登录界面配置显示skip
选项
这个配置简单,只需更改配置项dashboard_skip_login
的值为true
。
2、配置kube-dashboard
使用自定义ssl
证书
配置自定义的证书,可以方便构建kube-dashboard
的ingress
。
配置自定义证书需要
1)修改配置项dashboard_use_custom_certs
为true
。
2)创建自定义ssl
证书,并且创建对应的名为kubernetes-dashboard-certs
的secret
。
mkdir $HOME/certs && cd $HOME/certs
openssl genrsa -out dashboard.key 2048
openssl req -new -x509 -key dashboard.key -out dashboard.crt -subj /C=CN/ST=Shanghai/L=Shanghai/O=DevOps/CN=dashboard.mritd.me
kubectl create secret generic kubernetes-dashboard-certs --from-file=$HOME/certs -n kube-system
3)创建kube-dashboard
的ingress
。(ingress-conroller
采用kubespray
自带的ingress-nginx
组件)
kubectl create -f dashbaor-ingress.yaml
配置ingress-controller
所运行的节点IP
对应到dashboard.mritd.me
。
便可通过https://dashboard.mritd.me
访问kube-dashboard
的界面。
注: ingress-nginx
的controller
默认占用了以下几个端口
80 http
443 https
442 real https port (443 is used for ssl passthrough)
18080 default server
8181 default server
在kubespray
部署ingress-nginx
时,一般配置网络模式为hostnetwork
。因此容易造成端口冲突,比如自带的secureregistry
服务用到了443
端口(需配置在kube-deploy
节点不运行ingress-nginx
的controller
组件);heketi
服务的18080
端口要切换到18085
,注意存储gluster sc
的配置端点应该是heketi
服务运行节点,不是kube-deploy
节点。
此外ingress-nginx
中的pod hostport
功能与ipvs kube-proxy
有冲突,因此在ipvs
模式下,使用hostnetwork: true
部署ingress-nginx
。
在3rdparty
的efk
中缺少镜像quay.io/pires/docker-elasticsearch-curator:5.5.4
。