k8s笔记——kubernetes中的三种IP

kubernetes概念

Master:集群控制节点,每个集群需要至少一个master节点负责集群的管控

Node:工作负载节点,由master分配容器到这些node工作节点上,然后node节点上的docker负责容器的运行

Pod:kubernetes的最小控制单元,容器都是运行在pod中的,一个pod中可以有1个或者多个容器

Controller:控制器,通过它来实现对pod的管理,比如启动pod、停止pod、伸缩pod的数量等等

Service:pod对外服务的统一入口,下面可以维护者同一类的多个pod

Label:标签,用于对pod进行分类,同一类pod会拥有相同的标签

NameSpace:命名空间,用来隔离pod的运行环境

kubernetes中的三种IP

Kubernetes 系统中的三种IP

  • Node IP:Node 节点的 IP 地址
  • Pod IP: Pod 的 IP 地址
  • Cluster IP: Service 的 IP 地址

首先,Node IP 是 Kubernetes 集群中节点的物理网卡 IP 地址(一般为内网),所有属于这个网络的服务器之间都可以直接通信,所以 Kubernetes 集群外要想访问 Kubernetes 集群内部的某个节点或者服务,肯定得通过 Node IP 进行通信(这个时候一般是通过外网 IP 了)

然后 Pod IP 是每个 Pod 的 IP 地址,它是网络插件进行分配的,前面我们已经讲解过

最后 Cluster IP 是一个虚拟的 IP,仅仅作用于 Kubernetes Service 这个对象,由 Kubernetes 自己来进行管理和分配地址。

Service的资源清单文件:

kind: Service  # 资源类型
apiVersion: v1  # 资源版本
metadata: # 元数据
  name: service # 资源名称
  namespace: dev # 命名空间
spec: # 描述
  selector: # 标签选择器,用于确定当前service代理哪些pod
    app: nginx
  type: # Service类型,指定service的访问方式
  clusterIP:  # 虚拟服务的ip地址
  sessionAffinity: # session亲和性,支持ClientIP、None两个选项
  ports: # 端口信息
    - protocol: TCP 
      port: 3017  # service端口
      targetPort: 5003 # pod端口
      nodePort: 31122 # 主机端口
  • ClusterIP:默认值,它是Kubernetes系统自动分配的虚拟IP,只能在集群内部访问
  • NodePort:将Service通过指定的Node上的端口暴露给外部,通过此方法,就可以在集群外部访问服务
  • LoadBalancer:使用外接负载均衡器完成到服务的负载分发,注意此模式需要外部云环境支持
  • ExternalName: 把集群外部的服务引入集群内部,直接使用

相关推荐

  1. k8s笔记——kubernetesIP

    2024-06-07 03:30:02       28 阅读
  2. k8s探针】

    2024-06-07 03:30:02       26 阅读
  3. Kubernetes (K8s) Ingress解析

    2024-06-07 03:30:02       142 阅读
  4. k8s常用项目发布方式

    2024-06-07 03:30:02       56 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-07 03:30:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-07 03:30:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-06-07 03:30:02       87 阅读
  4. Python语言-面向对象

    2024-06-07 03:30:02       96 阅读

热门阅读

  1. 以太网基础 -- LLDP使用案例

    2024-06-07 03:30:02       36 阅读
  2. 力扣2781.最长合法子字符串的长度

    2024-06-07 03:30:02       28 阅读
  3. Spring MVC中,一个HTTP请求可能会被多个Handler处理

    2024-06-07 03:30:02       32 阅读
  4. 软件测试 - 第四章课后作业

    2024-06-07 03:30:02       34 阅读
  5. SOA的相关概念

    2024-06-07 03:30:02       28 阅读
  6. Meta Llama 3 里面装饰器

    2024-06-07 03:30:02       26 阅读
  7. Okhttp通用工具类

    2024-06-07 03:30:02       29 阅读
  8. 【.Net】Linq的使用

    2024-06-07 03:30:02       33 阅读
  9. spark MLlib 中的分类模型

    2024-06-07 03:30:02       33 阅读