本文主要是介绍Kubernetes Pod的网络暴露,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
这里先介绍下Pod的网络暴露,后面复习到service暴露再作更新
一、hostNetwork使用宿主机的网络
1、编写pod-hostnetwork.yaml
配置文件中pod的spec.hostNetwork: true 的配置可实现
apiVersion: v1
kind: Pod
metadata:name: pod-hostnetwork
spec:hostNetwork: truecontainers:- name: c1image: nginx:1.20.1-alpine
2、创建资源
kubectl apply -f pod-hostnetwork.yaml
3、查看资源
通过命令我们看到资源分配到node2节点上,且显示了宿主机的IP
我们通过资源访问对应IP的80端口,可以访问到服务
二、hostNetwork使用宿主机的网络
1、编写pod-hostport.yaml
配置文件中pod的containers.ports 的配置可实现,配置如下,其中
containerPort: 80 # 代表容器中的端口号
hostPort: 8088 # 表示映射到主机中的端口号
kind: Pod
apiVersion: v1
metadata:name: pod-hostport
spec:containers:- name: c1image: nginxports:- name: c1-portcontainerPort: 80hostPort: 8088protocol: TCP #一般不用写- name: c2image: nginxports:- name: c1-portcontainerPort: 80hostPort: 8089protocol: TCP #一般不用写
2、创建资源
kubectl apply -f pod-hostport.yaml
3、查看资源
通过命令我们看到资源分配到node1节点上,node1的ip为192.168.190.201
我们通过资源访问对应IP的8088端口和8089都能访问服务的两个容器对应的80端口
这篇关于Kubernetes Pod的网络暴露的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!