返回部落格

探索 CloudSigma PaaS:如何透過公用 IP 存取 Kubernetes 應用程式

探索 CloudSigma PaaS:如何透過公用 IP 存取 Kubernetes 應用程式

CloudSigma PaaS 允許使用者使用公用 IP 位址公開其應用程式。此位址需要附加到來自 Kubernetes 叢集 環境。在 CloudSigma PaaS 環境中,有兩種方法可以實現此目的:

  • 一種方法是將公用 IP 附加到專用的負載平衡器。1-Public IP for Access to Kubernetes Application in Jelastic PaaS
  • 另一種方法是將公用 IP 附加到 Kubernetes 的 Worker 節點。

在本教學中, 我們將引導您如何使用這兩種方法之一來獲取 Kubernetes 應用程式存取權限。

為 Kubernetes 應用程式存取設定專用負載平衡器

首先,我們將學習如何設定 專用負載平衡器 以進行應用程式存取:

  1. 前往 CloudSigma Marketplace 以尋找並安裝 Kubernetes 叢集。然後,部署您的應用程式。例如,我們將部署 Jakarta EE Cargo Tracker.
  2. 在您的 Kubernetes 叢集旁,尋找並按一下 變更環境拓撲。在螢幕上開啟的視窗中,新增一個專用負載平衡器節點。然後,像這樣為其附加一個公用 IP 位址:

2-Public IP Jelastic PaaS

在我們的範例中,我們使用了 NGINX 負載平衡器節點。還有多種其他可用的負載平衡器,包括 HAProxy, LS Web ADC 和 Varnish。您可以選擇您偏好使用的任何一個。

當您完成修改拓撲後,套用的變更將如下所示:

3-Public IP for Access to Kubernetes Application in Jelastic PaaS

4-Public IP for Access to Kubernetes Application in Jelastic PaaS

3. 下一步是為自訂網域建立 A 記錄。您將使用與先前步驟中相同的公用 IP 位址。在此範例中,我們將使用 cargo-tracker.cloudsigma.website:

5-Public IP for Access to Kubernetes Application in Jelastic PaaS

4. 現在我們可以將自訂網域附加到 K8s 叢集。為此,我們將發送請求以簽發受信任的 Let’s Encrypt SSL 憑證:

  • 將滑鼠懸停在負載平衡器上,然後按一下 Add-Ons.
  • 尋找並安裝 Let’s Encrypt Free SSL:

6-Public IP for Access in Jelastic PaaS-02

  • 在設定中,輸入您的自訂網域名稱,然後按一下 安裝。在我們的案例中,網域名稱如下:

7-Public IP for Access to Kubernetes Application in Jelastic PaaS-

最後,我們現在已經製作了可以使用自訂網域存取的應用程式 https://cargo-tracker.cloudsigma.website。我們還使用有效且受信任的 Let’s Encrypt SSL 憑證對應用程式上的流量進行了加密。

使用 Kubernetes Worker 節點公用 IP 位址獲取應用程式存取權限

接下來,我們將探討另一種可行的方法,使應用程式可在 Kubernetes 叢集外部使用。基本上,我們將學習如何將公用 IP 位址附加到 Kubernetes 叢集中的 worker 節點,以便直接存取應用程式:

8-Public IP for Access to Kubernetes Application in Jelastic PaaS

讓我們繼續使用先前向您展示的相同範例。我們將使用部署 Cargo Tracker 應用程式的同一個叢集。以下是操作步驟:

1. 按一下 變更環境拓撲。 將公用 IP 位址新增至 worker 節點:

9.1-Public IP for Access in Jelastic PaaS

2. 接下來,為您的自訂網域建立一條 A 記錄,並將其對應到您剛剛新增的 IP。請確保您使用的網域名稱與上一章中使用的不同。例如,我們將使用以下網域名稱:cargo-tracker-worker.cloudsigma.website:

9.2-Public IP for Access to Kubernetes Application in Jelastic PaaS

3. 將滑鼠懸停在 Control Plane 或 Master 節點上,然後按一下 Add-Ons。尋找並安裝 Certificate Manager。這應該會安裝一個 cert-manager 控制器,以及一個具有 LoadBalancer 服務類型的 NGINX ingress 控制器。後者包含與您的 worker 節點相關聯的 IP 位址。它將提供 “nginx-cert” ingress 類別資源:

10-Public IP for Access to Kubernetes Application in Jelastic PaaS-01

4. 在給定的欄位中,輸入您偏好的網域名稱,然後按一下 套用:

11-Public IP for Access to Kubernetes Application in Jelastic PaaS

5. 在安裝時,該附加元件還會安裝一個名為 helloworld-cert. 的測試應用程式。您只需使用以下命令刪除其使用的資源:

這些命令應使用 SSH (SFTP)Web SSH Gate Control PlaneMaster Node. 將滑鼠懸停在節點上,然後按一下 Web SSH 旁邊的選項以存取閘道。

另一個選項是將滑鼠懸停在 Control Plane Master Node 並按一下 Config。從這裡前往 SFTP/SSH Gate 並按照說明的指示操作。

6. 為了終止應用程式 SSL 流量並處理至 cargo-tracker 服務的路由,我們需要建立一個名為 cargo-tracker-worker. 假設我們使用的是 cargo-tracker-worker-ingress.yaml. 您可以使用編輯器(例如 vi )來建立檔案,然後貼上以下程式碼:

之後,請按照以下步驟操作:

7. 當您建立此 ingress 時,Certificate Manager 將自動為您的新網域名稱核發 Let’s Encrypt SSL 憑證。請等待一兩分鐘,然後再檢查您的應用程式是否可在新的自訂網域名稱上使用,在我們的範例中為 https://cargo-tracker-worker.cloudsigma.website

大功告成!透過遵循這些步驟,您已使用兩種不同的方法公開了您的應用程式。因此,您將會看到兩個 ingress。對我們來說,它們是:

  • cargo-tracker

此 ingress 用於處理透過專用負載平衡器的公用 IP 傳入的應用程式流量。

  • cargo-tracker-worker

此 ingress 設定為處理直接從附加到 K8s 工作節點的 IP 流入的應用程式流量。

它們將顯示如下:

12-Public IP for Access in Jelastic PaaS

根據您選擇的實作方式,您在生產環境中只需要一個 ingress。CloudSigma PaaS 為其用戶提供了多種工具來執行 負載平衡 ,以滿足其應用程式的需求。歡迎閱讀並深入了解 負載平衡 在該平台上。我們也針對如何使用諸如 NGINX 以及 HAProxy 等其他可用工具來進行負載平衡的基礎知識,提供了詳細的指南。

您可以嘗試 CloudSigma’s PaaS ,利用我們的 7 天免費試用 ,或是 聯絡我們 ,以取得更多詳細資訊和平台示範。 

免費試用 7 天

author

Zhenya Mocheva

作者 · CloudSigma

Preslav Dobrev 是 CloudSigma 的創意設計師,專注於透過傳統與創新行銷渠道建立一致的企業形象。他擅長將藝術願景與策略行銷相融合,創造具有影響力的品牌敘事。

留言

目前尚無留言。成為第一個留言的人吧。