Day09-Kubernetes那些事 - Ingress 篇(一)

前言

在上一篇文章介绍完 Service 後,看似解决了对外连接的问题,但大家一定会发现 port 真的太丑了,现在应该没有任何一个网站除了网域之外後面还要加 port 吧XD

为了解决这个问题,今天的文章就要来介绍 Ingress,由於 Ingress 能介绍的东西真的太多了,只用一篇文章怕读者会比较不好吸收(其实是可以多占几篇铁人赛的篇幅XD),这边笔者预计会用三天的时间来完整的介绍整个 Ingress,废话不多说马上开始今天的文章吧!

什麽是 Ingress?

Ingress 可以帮助我们统一对外的 port number,并且根据 hostname 或是 pathname 决定请求要转发到哪个 Service 上,之後就可以利用该 Service 连接到 Pod 做事情了,而 K8s 的 Ingress 会统一开 http 的 80 port 以及 https 的 443 port。

Ingress 作用

上面的段落简单的介绍了 Ingress 的观念後,接下来介绍一下 Ingress 真正的功能吧!

  • 将不同路径的请求对应到不同的 Service 物件

    若没有设定网域,则该机器上所有网域只要透过此路径均可以连接到指定的 Service 物件。

  • 将不同网域的请求对应到不同的 Service 物件

    若没有设定路径,则会以 /路径连接到指定的 Service 物件。

  • 支援 SSL Termination

    SSL 全名为:传输层安全性协定,而网站通常都会利用 https 进行加密以确保资料安全,但 Service 与 Pod 之间的沟通都是以无加密方式传输,所以 Ingress 就支援解密,让 Service 与 Pod 可以正常沟通传递资料。

Ingress 架构图

最後加了 Ingress 後架构图就会长得像下图这样,这里笔者故意用网域以及路径的方式来表示 Ingress 的连结到 Service 的方式。

启动 Ingress

由於 minikube 本身并没有启用 Ingress 的功能,因此需要额外下指令让 minikube 可以顺利的使用 Ingress ,启动方法也很简单只要在终端机下 minikube addons enable ingress 即可。

修改本机 host 内容

加了 Ingress 後基本上就需要网域才可以使用了,但我们都在本机端上练习而已,所以也不用刻意去网路上购买网域,只要修改本机的 host 档案就可以了。

首先在终端机下 sudo vim /etc/hosts 并输入电脑密码後,在档案内加入 minikube ip 以及想要呈现的网域名称即可,写法如下。

小结

今天介绍了 Ingress 的基本观念以及如何在 minikube 上启用,有了这些观念後再来介绍整体的写法跟应用会更得心应手。

接下来的文章就要介绍 Ingress 的写法跟建立了,如果对於文章有任何问题都欢迎留言给我,那我们就下篇文章见喽~


<<:  Day 10 - 将 DEALERS 後台储存资料提取後,送至前台渲染画面 - Literal 控制项应用 - ASP.NET Web Forms C#

>>:  Day.15 「条件设定好~让程序判断!」 —— JavaScript 条件判断式

30天打造品牌特色电商网站 Day.12 一定要有的导览列

导览列(Navigation)是每个网站必要且重要的元件,当使用者进到网页想马上找寻想要的资讯,好的...

强型闯入DenoLand[33] - Web API 正式完成!

强型闯入DenoLand[33] - Web API 正式完成! 昨天笔者介绍了 deno_mon...

用我的 iMac 把 Clear Linux 安装到 USB 外接硬碟上

一般而言,要安装 Linux,又要保留原本的系统,就得再先了解一下硬碟分割,通常都会以 GRUB ...

Day 29 洞悉消费者的心

消费者每天搜寻的字词中,根据 Google 的统计,每天有 15% 以上的新的搜寻字词出现。因此编辑...

[Day 28]老师我学逻辑推论做什麽(3)

今天来说说「命题」 命题是指「可以被判断对错的一个叙述」 另外还有否命题、逆命题、否逆命题 原命题:...