1. 程式人生 > >阿里雲Serverless Kubernetes通過Ingress提供7層服務訪問

阿里雲Serverless Kubernetes通過Ingress提供7層服務訪問

簡介

在阿里雲Serverless Kubernetes叢集中,我們可以通過LoadBalancer Service對外提供四層服務訪問,同樣我們也可以通過Ingress來對外提供七層服務訪問,今天主要分享下如何在Serverless Kubernetes叢集中提供七層域名服務訪問。

clipboard.png

使用說明

  1. 不指定SLB例項情況下系統會自動幫您生成一個公網SLB例項。
  2. SLB例項預設前端監聽埠為80(HTTP協議)和443(HTTPS協議)。
  3. SLB例項HTTPS證書預設會初始化為第一個建立的Ingress配置的TLS證書,否則會初始化為系統預設證書;您完全可根據需要自行在SLB控制檯上進行修改。
  4. 當您指定使用已存在的SLB例項時,要求該SLB例項規格必須是效能保障型(支援ENI);同時確保80和443埠當前沒有其他服務使用。

註釋說明

clipboard.png

部署示例

a. 使用預設生成的SLB例項

當我們不指定SLB例項時,系統會在第一個Ingress建立時自動幫我們生成一個性能保障型的公網SLB例項。

1、部署測試服務

這裡我們部署一個coffee service和tea service:

clipboard.png

clipboard.png

2、配置 Ingress

通過Ingress配置coffee service和tea service對外暴露的域名和Path路徑:

clipboard.png

clipboard.png

3、測試服務訪問

注意:目前我們需要自行將域名解析到SLB例項IP上

3.1 通過瀏覽器測試訪問coffee服務:

clipboard.png

3.2 通過命令列方式測試訪問coffee服務:

clipboard.png

3.3 通過瀏覽器測試訪問tea服務:

clipboard.png

3.4 通過命令列方式測試訪問tea服務:

clipboard.png

b. 使用指定的SLB例項

我們可以通過註釋service.beta.kubernetes.io/alicloud-loadbalancer-id來指定使用已存在的SLB例項,但要求該SLB例項必須為效能保障型規格(支援ENI)。

注意:系統會自動初始化SLB例項的80和443埠,請確保當前沒有其他服務使用

1、部署測試服務

這裡我們部署一個tomcat service:

clipboard.png

clipboard.png

2、申請SLB例項

我們在叢集同Region下自行申請一個性能保障型SLB例項(如slb.s2.small),可以是私網也可以是公網(依據具體需求)。

3、配置TLS證書

注意:系統自動依據第一個建立的Ingress的TLS證書來初始化SLB的HTTPS預設證書,若需要修改HTTPS預設證書,可在SLB控制檯自行修改;若需配置多個證書,可在SLB控制檯HTTPS監聽擴充套件域名下自行新增

clipboard.png

4、配置 Ingress

通過Ingress配置tomcat service對外暴露的域名和Path路徑:

clipboard.png

clipboard.png

5、測試服務訪問

注意:目前我們需要自行將域名解析到SLB例項IP上

5.1 通過瀏覽器測試訪問tomcat服務:

clipboard.png

5.2 通過命令列方式測試訪問tomcat服務:

clipboard.png

本文作者:chenqz

閱讀原文