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

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

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

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

然后使用命令行kubectl get deployment 得到创建好的deployment:

然后创建一个同名的service,类型为nodeport。

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

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

然后就能通过这个端口号访问nginx server了:

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

首先打开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的原创文章,请关注公众号"汪子熙":

最新文章

  1. .NET跨平台之旅:ASP.NET Core从传统ASP.NET的Cookie中读取用户登录信息
  2. React学习笔记-4-什么是生命周期
  3. JavaScript判断变量值简单的方法
  4. SQLSERVER2014中的新功能
  5. 原生Ajax封装随笔
  6. IT技术团队行而有效的管理之道
  7. foxtable使用笔记
  8. Android 开发第二天
  9. Android应用程序窗口(Activity)的绘图表面(Surface)的创建过程分析
  10. SQL Server 2012学习笔记 2 Server Core中命令行安装SQL
  11. 利用mapreduce清洗日志内存不足问题
  12. mybatis优化配置
  13. How to Create Dump File for Applications
  14. Struts2学习笔记整理(二)
  15. 基本服务器的AAA实验(Cisco PT)
  16. Oracle中connect by用法示例
  17. 5.1、按键SW1控制LED1亮灭
  18. Javascript 高级程序设计--总结【二】
  19. Linux 配置Samba服务
  20. day77

热门文章

  1. iOS设备屏幕分辨率分布
  2. CodeForces 1098D. Eels
  3. python 之队列
  4. mptcp文献汇总
  5. ASP.NET中的几种弹出框提示基本方法
  6. DZNEmptyDataSet——空白数据集显示框架
  7. SPOJ130 【DP·背包选取特性】
  8. cogs 1176. [郑州101中学] 月考
  9. Html5shiv ---- 让IE低版本浏览器识别并支持HTML5标签
  10. 新手安装 hadoop、hive和hbase 笔记