参考:

http://www.bubuko.com/infodetail-2242562.html

 http://www.cnblogs.com/zhenyuyaodidiao/p/6500897.html

 

下面操作在k8s master 节点上安装 docker 容器

1.下载kubernetes-dashboar.yaml文件

     git clone https://github.com/jdedu/kubernetes.git

 

     先安装 git 

    yum install git

 

2.修改内容

  vi kubernetes/kubernetes-dashboard.yaml

install kubernetes dashboard  安装  kubernetes dashboard   详细

 

3.创建dashboard容器

     

kubectl create -f kubernetes-dashboard.yaml

 

deployment "kubernetes-dashboard" created

service "kubernetes-dashboard" created

 install kubernetes dashboard  安装  kubernetes dashboard   详细

 

 

以上安装后 pods 是没有的,查了下尝试如下方法解决:

 

不过这样默认安装后,你可能还会遇到如下问题:

(1) Dashboard pod创建失败:这是由于kubernetes-dashboard-amd64:v1.1.1 image在墙外,pull image失败导致的。

可以通过使用加速器或使用替代image的方式来解决,比如:mritd/kubernetes-dashboard-amd64:v1.4.0。修改一下dashboard-controller.yaml中image那一行即可。

(2)Dashboard无法连接到master node上的api server

如果唯一的dashboard pod(由于replicas=1)被调度到minion node上,那么很可能无法连接上master node上api server(dashboard会在cluster中自动检测api server的存在,但有时候会失败),导致页面无法正常显示。因此,需要指定一下api server的url,比如:我们在dashboard-controller.yaml中为container启动增加一个启动参数–apiserver-host:

// dashboard-controller.yaml
... ...
spec:
      containers:
      - name: kubernetes-dashboard
        image: mritd/kubernetes-dashboard-amd64:v1.4.0
        imagePullPolicy: Always
        ports:
        - containerPort: 9090
          protocol: TCP
        args:
           - --apiserver-host=http://{api server host}:{api server insecure-port}
... ...

(3)增加nodeport,提供外部访问路径

dashboard以cluster service的角色运行在cluster中,我们虽然可以在Node上访问该service或直接访问pod,但要想在外部网络访问到dashboard,还需要另外设置,比如:设置nodeport。

在dashboard-service.yaml中,修改配置如下:

spec:
  type: NodePort
  ports:
  - port: 80
    targetPort: 9090
    nodePort: 12345

这样你就可以通过node 的public ip+nodeport访问到dashboard了。

不过这时,你的dashboard算是在“裸奔”,没有任何安全可言:
- dashboard ui没有访问管理机制,任何access都可以全面接管dashboard;
- 同时在背后,dashboard通过insecure-port访问apiserver,没有使用加密机制。

 

 

 

4.查看状态

   kubectl get pods --namespace=kube-system

 或 

kubectl get pod --namespace=kube-system

 

NAME                                    READY     STATUS              RESTARTS   AGE

kubernetes-dashboard-1607234690-3bnk2   0/1       ContainerCreating   0          34s

 install kubernetes dashboard  安装  kubernetes dashboard   详细

 

 

查看构建详细信息

 

kubectl describe pods kubernetes-dashboard-1607234690-3bnk2 --namespace=kube-system

 

 上面命令 没有数据,下面的有:

kubectl get deployment --all-namespaces

install kubernetes dashboard  安装  kubernetes dashboard   详细

 

[root@k8s-master ~]# kubectl get deployment --all-namespaces
NAMESPACE NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
kube-system kubernetes-dashboard-latest 1 1 1 1 1h
[root@k8s-master ~]# kubectl get svc --all-namespaces
NAMESPACE NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
default kubernetes 10.254.0.1 <none> 443/TCP 9d
kube-system kubernetes-dashboard 10.254.44.119 <none> 80/TCP 1h
[root@k8s-master ~]# kubectl get pod -o wide --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE
kube-system kubernetes-dashboard-latest-3866786896-vsf3h 1/1 Running 0 1h 10.0.82.2 k8s-node-1

 

 install kubernetes dashboard  安装  kubernetes dashboard   详细

 

 


5.测试

 

使用浏览器输入:http://k8s-master:8080/ui

 install kubernetes dashboard  安装  kubernetes dashboard   详细

 

 在相应minion上访问这个地址 是可以的:

install kubernetes dashboard  安装  kubernetes dashboard   详细

 

 install kubernetes dashboard  安装  kubernetes dashboard   详细

 

 

 install kubernetes dashboard  安装  kubernetes dashboard   详细

 

install kubernetes dashboard  安装  kubernetes dashboard   详细

 

 

 

销毁应用
  在master上执行:

kubectl delete deployment kubernetes-dashboard  --namespace=kube-system
kubectl delete svc kubernetes-dashboard --namespace=kube-system

 

     

测试:

 

 kubectl run sonarqube --image=192.168.179.133:80/sonarqube:5.6.5 --replicas=1 --port=9000

 

kubectl describe deployment/sonarqube

 

kubectl describe replicaset sonarqube-3005990520

kubectl describe pod sonarqube-3586311807-l234f 

 

kubectl delete deployment sonarqube  
kubectl delete svc sonarqube

 

install kubernetes dashboard  安装  kubernetes dashboard   详细

 

 

 

 

install kubernetes dashboard  安装  kubernetes dashboard   详细

 

install kubernetes dashboard  安装  kubernetes dashboard   详细

 

此问题参考 我的博客:

http://www.cnblogs.com/hutuchong/p/7784061.html

 

大致原因 : 这个镜像下不下来

 单独  

docker pull registry.access.redhat.com/rhel7/pod-infrastructure:latest

会出现 提示

install kubernetes dashboard  安装  kubernetes dashboard   详细

找了资料

 install kubernetes dashboard  安装  kubernetes dashboard   详细

安装后就可以了

 

把这镜像tag 后 ,上传到私服

 install kubernetes dashboard  安装  kubernetes dashboard   详细

 

注意:私服是在docker容器里的, master的docker要访问私服 也要添加  信任权限的。参考博文

 

然后在minion上 就可以执行命令 或k8s也可以获取到

install kubernetes dashboard  安装  kubernetes dashboard   详细

 

 

最后这个测试成功1!

 

install kubernetes dashboard  安装  kubernetes dashboard   详细

 

相关文章: