Kubenetes里pod和service绑定的实现方式

我以前的文章 如何在Kubernetes里建立一个Nginx service介绍了如何建立一个Kubernetes pod和service,使用的方法是命令kubectl run。node

本文介绍另外一种方式,经过这种方式来学习Kubernetes里pod和对应的service是如何绑定的。nginx

首先使用下面的命令行建立一个名称为jerry-nginx-1982的deployment:tcp

kubectl create deployment jerry-nginx-1982 --image=nginx学习

而后使用命令行kubectl get deployment 获得建立好的deployment:测试

而后建立一个同名的service,类型为nodeport。命令行

kubectl create service nodeport jerry-nginx-1982 --tcp 80:80server

建立完成后,使用命令行kubectl get svc获得名称为jerry-nginx-1982对外暴露的端口号:31954:blog

而后就能经过这个端口号访问nginx server了:get

那么这两个同名的pod和service是如何关联的呢?kubernetes

首先打开kubernetes dashboard,找到以前建立的pod:

其明细为:jerry-nginx-1982-67cb658cb8-9hl99

再打开同名service:

再打开这个service里的pod,发现就是咱们前面找到的jerry-nginx-1982-67cb658cb8-9hl99,说明pod和service是经过名称关联的。

咱们能够作一个negative测试,直接建立一个名为test的service,但不给它预先建立名为test的pod:

kubectl create service nodeport test --tcp 80:80

service建立成功后,打开这个service,发现里面没有分配任何pod:

这个结果和咱们预测的一致。

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

相关文章
相关标签/搜索