kubernetes集群发布Pod端口
创建测试环境
<代码> vi nginx.yaml apiVersion:应用程序/v1 :部署 元数据: 名称:my-nginx 规范: 选择器: matchLabels: 运行:my-nginx 副本:2 模板: 元数据: 标签: 运行:my-nginx 规范: 容器: ——名称:my-nginx 图片:nginx 港口: - containerPort: 80 代码>
验证服务启动
<代码> [root@kubm-02 ~] # kubectl豆荚 重启名字就绪状态的年龄 我- nginx - 756 fb87568 jwgp8 1/1运行0 64年代 我- nginx - 756 fb87568 vshxc 1/1运行0 64年代 (root@kubm-02 ~) # 代码>
<代码> [root@kubm-02 ~] # kubectl得到豆荚- l运行=my-nginx - o宽 姓名就绪状态重启年龄IP节点节点准备盖茨提名 我- nginx - 756 fb87568 jwgp8 1/1运行0 2 m12 10.244.3.101 kubnode-01 & lt; none>& lt; none> 我- nginx - 756 fb87568 vshxc 1/1运行0 2 m12 10.244.4.123 kubnode-02 & lt; none>& lt; none> 代码>
检查Pod的IP地址:
<代码> [root@kubm-02 ~] # kubectl得到豆荚- l=my-nginx - o yaml | grep podIP运行 podIP: 10.244.3.101 podIP: 10.244.4.123 代码>
创建服务
Kubernetes服务从逻辑上定义了运行在集群中的一组,这些Pod提供了相同的功能。当每个服务创建时,会被分配一个唯一的IP地址(也称为clusterIP)。这个IP地址与一个服务的生命周期绑定在一起,当服务存在的时候它也不会改变。可以配置圆荚体使它与服务进行通信,Pod知道与服务通信将被自动地负载均衡到该服务中的某些上仓。
创建nginx服务
kubectl暴露命令为2个Nginx副本创建一个服务:
<代码> [root@kubm-02 ~] # kubectl公开部署/my-nginx 服务/my-nginx暴露 代码>
验证服务启动
<代码> [root@kubm-02 ~] # kubectl svc 名字类型集群ip外部ip端口(年代) my-nginx ClusterIP 10.245.206.203 & lt; none>80/TCP 2 m36s 代码>
查看详细信息
<代码> root@kubm-02 ~ # kubectl svc my-nginx描述 名称:my-nginx 名称空间:默认 标签:& lt; none> 注释:& lt; none> 选择器:=my-nginx运行 类型:ClusterIP 知识产权:10.245.206.203 端口:& lt; unset>80/TCP 发送:80/TCP 端点:10.244.3.101:80 10.244.4.123:80 会话关联:没有 事件:& lt; none> 代码>
<代码> kubectl描述阿宝my-nginx #查看my-nginx pod的详细状态 kubectl描述rs my-nginx #查看my-nginx复制集的详细状态 kubectl描述部署my-nginx #查看my-nginx部署的详细状态代码>
访问服务
Kubernetes支持两种主要的服务发现模式,环境变量和DNS。前者在单个节点上可用使用,然而后者必须使用kube-dns集群插件。
<代码> [root@kubm-02 ~] # kubectl豆荚 重启名字就绪状态的年龄 我- nginx - 756 fb87568 jwgp8 1/1 0 23 m 我- nginx - 756 fb87568 vshxc 1/1 0 23 m (root@kubm-02 ~) # kubectl exec - nginx - 756 fb87568 jwgp8——printenv | grep服务 KUBERNETES_SERVICE_HOST=10.245.0.1 KUBERNETES_SERVICE_PORT=443 KUBERNETES_SERVICE_PORT_HTTPS=443 代码>
DNS解析测试
Kubernetes提供DNS,如果它在集群中处于运行状态,可以通过如下命令来检查:
<代码> [root@kubm-02 ~] #=kube-system kubectl得到服务kube-dns——名称空间 名字类型集群ip外部ip端口(年代) kube-dns ClusterIP 10.245.0.10 & lt; none>现年53岁的53/UDP/TCP, 9153/TCP 11 d 代码>
验证服务解析
启动一个安装有卷曲的镜像
<代码> [root@kubm-02 ~] # kubectl运行curl——图像=径向/busyboxplus: curl - - tty 代码>