Kubernetes之Pod

网友投稿 447 2022-05-30

Pod是对一个或者一组容器的抽象,它们共享相同的网络IP和存储。它事实上是Kubernetes里最小的部署单元。你不能直接访问一个Docker容器,你只能访问它的Pod。通常一个Pod包含一个Docker容器,但是你也可以运行多个。例如,一个应用容器可能想在同一个Pod里部署一些监控的后台容器。

为了使容器在Kubernetes集群里可以被其它Pod访问,你需要用service来包装这个Pod。

# expose a port through with a service $ kubectl expose deployment nginx-app --port=80 --name=nginx-http service "nginx-http" exposed

Kubernetes之Pod

你的容器现在可在容器内访问,但它仍没有暴露到外部世界。鉴于此,你需要用一个ingress来包装你的服务,我们必须先创建一个Ingress描述文件,例如:

apiVersion: extensions/v1beta1 kind: Ingress metadata: name: test-ingress annotations: ingress.kubernetes.io/rewrite-target: / spec: rules: - http: paths: - path: /testpath backend: serviceName: test servicePort: 80

Kubernetes的部署文件都是分开的,Pod创建使用pod yml文件,Service创建使用service yml文件,还有比如你上面看到的,Ingress创建使用Ingress文件……

Kubernetes

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:GPL与BSD的区别
下一篇:HTTPs 的原理——2021-03-29
相关文章