K8S 安装 Ingress

  1. K8S 对外暴露服务的方式有三种:loadblancer、nodeport、ingress
  2. ingress 由 ingress controller 和 ingress 服务组成
  3. controller 主要有两种:nginx、traefik

nginx ingress controller 分为k8s社区、nginx公司两个版本

ingress的工作原理

ingress具体的工作原理如下:
ingress contronler通过与k8s的api进行交互,动态的去感知k8s集群中ingress服务规则的变化,然后读取它,并按照定义的ingress规则,转发到k8s集群中对应的service。

而这个ingress规则写明了哪个域名对应k8s集群中的哪个service,然后再根据ingress-controller中的nginx配置模板,生成一段对应的nginx配置。

然后再把该配置动态的写到ingress-controller的pod里,该ingress-controller的pod里面运行着一个nginx服务,控制器会把生成的nginx配置写入到nginx的配置文件中,然后reload一下,使其配置生效。以此来达到域名分配置及动态更新的效果。

Ingress安装

1. 下载kubernetes nginx的yaml文件
wget  https://raw.githubusercontent.com/kubernetes/ingress-nginx/nginx-0.18.0/deploy/mandatory.yaml
2. 创建 Ingress - Nginx
kubectl apply -f ./mandatory.yaml
kubectl get pods -n ingress-nginx
kubectl get service -n ingress-nginx
3. 测试
curl http://10.98.51.155  //ip来自上一步
如果返回404则表示安装成功
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、Ingress概念 Kubernetes关于服务的暴露主要是通过NodePort方式,通过绑定宿主机的某个端口...
    沉沦2014阅读 10,940评论 0 6
  • Ingress 管理群集中服务的外部访问的API对象,通常是HTTP。Ingress可以提供负载平衡,SSL 终止...
    bern85阅读 2,551评论 0 5
  • 本文将介绍在 k8s 中向外界提供服务的几种方法port-forward、NodePort,以及 更加常用的提供服...
    HoPGoldy阅读 18,745评论 0 14
  • 参考文献:https://github.com/kubernetes/ingress-nginx/blob/ngi...
    码二哥阅读 23,002评论 4 10
  • 亲爱的朋友,请相信宇宙中拥有取之不尽,用之不竭的一切美好,认真而放松的做一次,当下就能体验到美好和喜悦,坚持做下去...
    道心禅阅读 450评论 0 1