当前位置: 首页 > news >正文

k8s的NodeIP、PodIP、ClusterIP、ExternalIP

1.NodeIP

 K8s集群由Master Node与Worker Node组成。

 Node:组成k8s集群的机器,可以是物理机或虚拟机。

 Master Node :管理节点也叫控制平面主要负责管理控制方面。

 Worker Node::工作节点用于部署处理业务的工作负载或pod。

 NodeIP就是节点的IP地址,也就是InternalIP。

  #执行命令查看k8s的节点信息

      kubectl get nodes -o wide

2.PodIP

Pod: 是在k8s中可部署的最小单元,其中可以包含一个或多个容器,(k8s的node节点上会通过kubelet来进行管理pod的生命周期)可以理解成是对容器的一层封装,操作pod间接操作其中的容器。

  PodIP:在pod的容器启动成功分配的pod的唯一IP,不能与NodeIP的网段存在重合,该IP只能在K8s集群中访问,而且只要pod被delete再重新运行起来,PodIP地址是会换成新的PodIP,它不是一尘不变的。

   #执行命令查看k8s的默认命名空间下的pod信息

     kubectl  get pods  -o wide

3.ClusterIP

K8s中因为PodIP是会变动的,应用基本上不会直接使用PodIP地址。

因此,k8s中存在了一种service的服务,其中包含ClusterIp、NodePort、LoadBalancer方式。

ClusterIp 及集群中的服务IP,分配完就不会变动,用于绑定pod,但是访问只能在集群内。

  #执行命令查看k8s的默认命名空间下的service的信息

kubectl  get svc

4.ExternalIP

ExternalIP:外部IP,主要用于提供集群内服务提供对外访问。实现方式使用service的LoadBalancer方式,分配负载均衡IP。

访问链路由ExternalIP:Port-->NodeIP:NodePort-->ServiceIP:Port-->PodIP:TargetPort

#执行命令查看k8s的默认命名空间下的service的信息

kubectl get svc -o wide

 4.1 ExternalIP:Port 访问pod

可以集群外进行访问,在我的宿主机上访问nginx服务。

  192.168.56.201:8080

 4.2 NodeIP:NodePort 访问pod

在node节点上会暴露出端口3000-32767的端口。

如下我的节点的INTERNAL-IP即为NodeIP地址。

还是在宿主机上浏览器访问nginx服务。

192.168.56.103:31625

4.3 ServiceIP:Port访问pod

还是在宿主机上浏览器尝试访问nginx服务。

10.97.70.178:8080

验证是CLUTSER-IP是在集群外访问不了。

在master节点上验证。

 curl 10.97.70.178:8080可以访问nginx服务。

4.4 PodIP:TargetPort访问pod

   kubectl get svc -n default

   kubectl describe svc nginx-lb

   kubectl  get pods -n default -o wide

curl 10.244.192.214:80

直接访问pod的形式成功

http://www.lryc.cn/news/441327.html

相关文章:

  • 【vue element-ui】关于删除按钮的提示框,可一键复制
  • 内部工具使用
  • Spring Boot-静态资源管理问题
  • 白酒与商务宴请:如何成为餐桌上的受宠者之一?
  • 【C语言零基础入门篇 - 9】:文件操作
  • 链式二叉树的基本操作(C语言版)
  • Tcp三次握手四次挥手和SSL/TLS
  • 大棚分割数据集,40765对影像,16.9g数据量,0.8米高分二,纯手工标注(arcgis标注)的大规模农业大棚分割数据集。
  • Jenkins插件安装失败时这么做就搞定啦!
  • 优化器与现有网络模型的修改
  • kafka 超详细的消息订阅与消息消费几种方式
  • C++ 第三讲:内存管理
  • LeeCode打卡第二十九天
  • 阿里云专业翻译api对接
  • 基于Spring Boot的能源管理系统+建筑能耗+建筑能耗监测系统+节能监测系统+能耗监测+建筑能耗监测
  • 大数据新视界 --大数据大厂之 Cassandra 分布式数据库:高可用数据存储的新选择
  • ROS第五梯:ROS+VSCode+C++单步调试
  • SLA 概念和计算方法
  • C++比大小游戏
  • PCIe进阶之TL:Memory, I/O, and Configuration Request Rules TPH Rules
  • 【初阶数据结构】一文讲清楚 “堆” 和 “堆排序” -- 树和二叉树(二)(内含TOP-K问题)
  • sqli-lab靶场学习(二)——Less8-10(盲注、时间盲注)
  • Dijkstra算法和BFS算法(单源最短路径)
  • 在WordPress中最佳Elementor主题推荐:专家级指南
  • 关于RabbitMQ消息丢失的解决方案
  • c语言动态内存分配
  • 零基础制作一个ST-LINK V2 附PCB文件原理图 AD格式
  • nginx基础篇(一)
  • 监控系列之-Grafana面板展示及制作
  • 值传递和地址传递