第一次使用 Play with Kubernetes
https://labs.play-with-k8s.com
Last updated
https://labs.play-with-k8s.com
Last updated
1. Initializes cluster master node:
kubeadm init --apiserver-advertise-address $(hostname -i)
2. Initialize cluster networking:
kubectl apply -n kube-system -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 |tr -d '\n')"
3. (Optional) Create an nginx deployment:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/website/master/content/en/examples/application/nginx-app.yaml
The PWK team. 1. Initializes cluster master node:
kubeadm init --apiserver-advertise-address $(hostname -i)
........<忽略>........
[addons] Applied essential addon: CoreDNS
[addons] Applied essential addon: kube-proxy
Your Kubernetes master has initialized successfully!
# 2. Initialize cluster networking:
[node1 ~]$ kubectl apply -n kube-system -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 |tr -d '\n')"
serviceaccount/weave-net created
clusterrole.rbac.authorization.k8s.io/weave-net created
clusterrolebinding.rbac.authorization.k8s.io/weave-net created
role.rbac.authorization.k8s.io/weave-net created
rolebinding.rbac.authorization.k8s.io/weave-net created
daemonset.extensions/weave-net created
[node1 ~]$[node1 ~]$ kubectl get node
NAME STATUS ROLES AGE VERSION
node1 Ready master 4m v1.11.3
node2 Ready <none> 2m v1.11.3
node3 Ready <none> 1m v1.11.3
node4 Ready <none> 58s v1.11.3
[node1 ~]$[node1 ~]$ kubectl apply -f https://raw.githubusercontent.com/kubernetes/website/master/content/en/examples/application/nginx-app.yaml
service/my-nginx-svc created
deployment.apps/my-nginx created
[node1 ~]$
# 創建 services、pod 初期 pending 狀態
[node1 ~]$ kubectl get services
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 8m
my-nginx-svc LoadBalancer 10.107.145.35 <pending> 80:30997/TCP 28s
[node1 ~]$ kubectl get pods
NAME READY STATUS RESTARTS AGE
my-nginx-67594d6bf6-f94cb 0/1 ContainerCreating 0 42s
my-nginx-67594d6bf6-tfpg5 0/1 ContainerCreating 0 42s
my-nginx-67594d6bf6-trps7 0/1 ContainerCreating 0 42s
# 完成創建 pod 後狀態:Running
[node1 ~]$ kubectl get pods
NAME READY STATUS RESTARTS AGE
my-nginx-67594d6bf6-f94cb 1/1 Running 0 1m
my-nginx-67594d6bf6-tfpg5 1/1 Running 0 1m
my-nginx-67594d6bf6-trps7 1/1 Running 0 1m
# deployments
[node1 ~]$ kubectl get deployments
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
my-nginx 3 3 3 3 1m
# services
[node1 ~]$ kubectl get services
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 9m
my-nginx-svc LoadBalancer 10.107.145.35 <pending> 80:30997/TCP 1m
[node1 ~]$
# endpoints
[node1 ~]$ kubectl get endpoints -o wide
NAME ENDPOINTS AGE
kubernetes 192.168.0.13:6443 19m
my-nginx-svc 10.32.0.2:80,10.40.0.2:80,10.44.0.2:80 10m
[node1 ~]$
# pods
[node1 ~]$
[node1 ~]$ kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE
my-nginx-67594d6bf6-f94cb 1/1 Running 0 10m 10.44.0.2 node3 <none>
my-nginx-67594d6bf6-tfpg5 1/1 Running 0 10m 10.40.0.2 node2 <none>
my-nginx-67594d6bf6-trps7 1/1 Running 0 10m 10.32.0.2 node4 <none>