您现在的位置是:首页 >技术杂谈 >【云计算•云原生】7.play with kubernetes在线实验环境网站首页技术杂谈
【云计算•云原生】7.play with kubernetes在线实验环境
简介【云计算•云原生】7.play with kubernetes在线实验环境
1.play with kubernetes介绍
play with kubernetes网站链接
https://labs.play-with-k8s.com/
每次登录提供4小时在线实验环境,最多可以开5个节点
2.搭建多节点nginx示例
点击左边的ADD NEW INSTANCE之后,创建实例。可以在界面上看到也给出了部署集群的提示
执行第一条命令,设置主节点
kubeadm init --apiserver-advertise-address $(hostname -i) --pod-network-cidr 10.5.0.0/16
初始化完毕完成之后,界面上会显示 kubeadm join 命令,这个用于后续 node 节点加入集群使用,需要牢记。
执行第二条命令,设置网络
kubectl apply -f https://raw.githubusercontent.com/cloudnativelabs/kube-router/master/daemonset/kubeadm-kuberouter.yaml
查看节点情况
kubectl get nodes -o wide
kubectl get nodes
创建其他四个节点
创建新节点直接加入master节点
kubeadm join 192.168.0.18:6443 --token gduk8e.iixwjujxy3h2i4om --discovery-token-ca-cert-hash sha256:b1c32c9f0cad08cae2446e81a712db93323a2932491a55fdbf86e5c2ec53fef8
加入之后在主节点查看nodes情况
主节点执行第三条命令,通过yaml往四个子节点安装nginx服务器
kubectl apply -f https://raw.githubusercontent.com/kubernetes/website/master/content/en/examples/application/nginx-app.yaml
如下,三个pod分别建在node3,node2,node4,这三个节点里,每个节点里一个pod
将三个pod上的80端口暴露给master节点,个人猜测这里的expose就是使用了server网络来暴露的
kube-DNS保存serviceName->ClusterIP的信息。(service服务的ip叫ClusterIp)
- ClusterIP并不是一成不变的,ServiceName是唯一的。
Kube-Proxy保存CluserIP->PodIP的信息。这样两层可以实现POD 在集群之间的网络连接。
kubectl expose deploy/my-nginx --port 80
查看开放的服务并访问
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。