个混合(IBM Power 和 x86)架构场景中的 Mesos 和 Kubernetes(3)
- UID
- 1066743
|
个混合(IBM Power 和 x86)架构场景中的 Mesos 和 Kubernetes(3)
部署 Kubernetes 仪表板
用于该混合架构的 Kubernetes 和 Mesos 框架已完成。现在,我们应该部署它的仪表板。对于本例,在 x86 架构的从属节点中运行该仪表板。
首先,我们应该为每个从属节点添加标签。
- 为每个基于 x86 架构的从属节点添加标签 arch=x86。
docker run -e KUBERNETES_MASTER_IP=192.168.1.2 -e KUBERNETES_MASTER=192.168.1.2:8888 powerkvm/k8s-mesos-x86:v1.4.0-alpha kubectl label nodes 192.168.1.5 arch=x86
|
- 为每个基于 Power 架构的从属节点添加标签 arch=ppc64le。
docker run -e KUBERNETES_MASTER_IP=192.168.1.2 -e KUBERNETES_MASTER=192.168.1.2:8888 powerkvm/k8s-mesos-x86:v1.4.0-alpha kubectl label nodes 192.168.1.6 arch=ppc64le
|
- 检查结果。
docker run -e KUBERNETES_MASTER_IP=192.168.1.2 -e KUBERNETES_MASTER=192.168.1.2:8888 powerkvm/k8s-mesos-x86:v1.4.0-alpha kubectl get nodes --show-labels
NAME STATUS AGE LABELS
192.168.1.5 Ready 2d arch=x86,kubernetes.io/hostname=192.168.1.5
192.168.1.6 Ready 2d arch=ppc64le,kubernetes.io/hostname=192.168.1.6
|
- 下载 Kubernetes 仪表板。
- 将 nodeSelector 和 apiserver 添加到 kubernetes-dashboard-canary.yaml 中
cat /root/dashboard/src/deploy/kubernetes-dashboard-canary.yaml
…
spec:
containers:
- name: kubernetes-dashboard-canary
image:gcr.io/google_containers/kubernetes-dashboard-amd64:canary
…
args:
- --apiserver-host=http://192.168.1.2:8888
…
nodeSelector:
arch: x86 …
|
- 为该仪表板运行 Kubernetes 服务。
docker run --privileged -v /root/dashboard:/root/dashboard -e KUBERNETES_MASTER_IP=192.168.1.2 -e KUBERNETES_MASTER=192.168.1.2:8888 powerkvm/k8s-mesos-x86:v1.4.0-alpha kubectl create -f /root/dashboard/src/deploy/kubernetes-
dashboard-canary.yaml --namespace="kube-system"
|
- 检查服务和 pod。
检查服务:
docker run -e KUBERNETES_MASTER_IP=192.168.1.2 -e KUBERNETES_MASTER=192.168.1.2:8888 powerkvm/k8s-mesos-x86:v1.4.0-alpha kubectl get services --namespace="kube-system"
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
dashboard-canary 10.10.10.14 <nodes> 80/TCP 21m
|
获取仪表板服务的 nodePort:
1
2
3
4
5
6
7
8
9
10
11
| docker run -e KUBERNETES_MASTER_IP=192.168.1.2 -e KUBERNETES_MASTER=192.168.1.2:8888 powerkvm/k8s-mesos-x86:v1.4.0-alpha kubectl describe services dashboard-canary --namespace="kube-system"
Name: dashboard-canary
Namespace: kube-system
Labels: app=kubernetes-dashboard-canary
Selector: app=kubernetes-dashboard-canary
Type: NodePort
IP: 10.10.10.14
Port: <unset> 80/TCP
NodePort: <unset> 31810/TCP
Endpoints: <none>
Session Affinity: None
|
检查 pod:
docker run --privileged -v /root/dashboard:/root/dashboard -e KUBERNETES_MASTER_IP=192.168.1.2 -e KUBERNETES_MASTER=192.168.1.2:8888 powerkvm/k8s-mesos-x86:v1.4.0-alpha kubectl get pods --namespace="kube-system"
NAME READY STATUS RESTARTS AGE
kubernetes-dashboard-canary-x5wqg 1/1 Running 0 1h
|
Web UI
现在,我们已成功部署了 Kubernetes 和 Mesos。让我们检查一下 Mesos 的网页和仪表板。
对于 Mesos UI,我们可以通过访问任何 Mesos 主节点的 IP 和端口 5050 来访问主页。
例如,[任何 Mesos 主节点的 IP] :5050
图 2. Mesos 主页
对于仪表板,我们可以通过访问任何 Mesos 从属节点的 IP 和 nodePort 来访问主页。
例如:[任何 Mesos 从属节点的 IP] : nodePort.
可以从仪表板服务的描述中获得 nodePort。
也可以使用以下命令获得 nodePort:
docker run -e KUBERNETES_MASTER_IP=192.168.1.2 -e KUBERNETES_MASTER=192.168.1.2:8888 powerkvm/k8s-mesos-x86:v1.4.0-alpha kubectl describe services dashboard-canary --namespace="kube-system"
|
图 3. Kubernetes 仪表板 |
|
|
|
|
|