ブログに戻る

CloudSigma PaaSの探索:パブリックIP経由でKubernetesアプリケーションにアクセスする方法

CloudSigma PaaSの探索:パブリックIP経由でKubernetesアプリケーションにアクセスする方法

CloudSigma PaaS を使用すると、ユーザーはパブリックIPアドレスを使用してアプリケーションを公開できます。このアドレスは、Kubernetesクラスター 環境のノードにアタッチする必要があります。CloudSigma PaaS環境でこれを実現するには、2つの方法があります:

  • 1つの方法は、パブリックIPを専用のロードバランサーにアタッチすることです。1-Public IP for Access to Kubernetes Application in Jelastic PaaS
  • もう1つの方法は、KubernetesのWorkerノードにパブリックIPをアタッチすることです。

このチュートリアルでは、 これら2つのアプローチのいずれかを使用して、Kubernetesアプリケーションへのアクセスを取得する方法をご案内します。

Kubernetesアプリケーションアクセス用の専用ロードバランサーの設定

まず、アプリケーションアクセス用の専用ロードバランサー のセットアップ方法を学びます:

  1. まずは CloudSigma Marketplace にアクセスして、Kubernetesクラスターを見つけてインストールします。次に、アプリケーションをデプロイします。例として、ここでは Jakarta EE Cargo Tracker.
  2. をデプロイします。Kubernetesクラスターの横にある Change Environment Topology をクリックします。表示されるウィンドウで、専用ロードバランサーノードを追加します。次に、以下のようにパブリック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

  • を見つけてインストールします。設定でカスタムドメイン名を入力し、Install をクリックします。今回の例では、ドメイン名は以下の通りです:

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

これで、カスタムドメイン https://cargo-tracker.cloudsigma.website を使用してアクセスできるアプリケーションが完成しました。また、有効で信頼されたLet’s Encrypt SSL証明書を使用して、アプリケーション上のトラフィックも暗号化されています。

Kubernetes WorkerノードのパブリックIPアドレスを使用したアプリケーションへのアクセス取得

次に、Kubernetesクラスターの外部でアプリケーションを利用可能にするための別のアプローチを見ていきます。基本的には、アプリに直接アクセスできるようにするために、Kubernetesクラスター内のWorkerノードにパブリックIPアドレスをアタッチする方法を学びます:

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

先ほど示したのと同じ例で進めましょう。Cargo Trackerアプリケーションをデプロイしたのと同じクラスターを使用します。手順は以下の通りです:

1. Change Environment Topology をクリックします。WorkerノードにパブリックIPアドレスを追加します:

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 を見つけてインストールします。これにより、LoadBalancerサービスタイプのNGINX ingressコントローラーとともに、cert-managerコントローラーがインストールされます。後者には、Workerノードに関連付けられたIPアドレスが含まれています。これは「nginx-cert」ingressクラスのリソースを提供します:

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

4. 指定されたフィールドに希望のドメイン名を入力し、Apply:

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

をクリックします。5. インストール時に、アドオンは helloworld-cert. というテストアプリケーションもインストールします。以下のコマンドを使用して、それが使用するリソースを簡単に削除できます:

これらのコマンドは、 SSH (SFTP) または Web SSH Gate Control Plane または Master 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. このイングレスを作成すると、Certificate Managerが新しいドメイン名に対してLet’s Encrypt SSL証明書を自動的に発行します。新しいカスタムドメイン名(今回の場合はhttps://cargo-tracker-worker.cloudsigma.website)でアプリが利用可能になるまで、1〜2分お待ちください。

これで完了です!これらの手順に従うことで、2つの異なるアプローチを使用してアプリケーションを公開しました。その結果、2つのイングレスが表示されます。今回の例では以下の通りです:

  • cargo-tracker

このイングレスは、専用ロードバランサーのパブリックIPを経由して入ってくるアプリケーショントラフィックを処理します。

  • cargo-tracker-worker

このイングレスは、K8sワーカーノードにアタッチされているIPから直接流入するアプリケーショントラフィックを処理するように設定されています。

これらは次のように表示されます:

12-Public IP for Access in Jelastic PaaS

どの実装方法を選択するかによって、本番環境で必要となるイングレスは1つだけになります。CloudSigma PaaSは、ユーザーがロードバランシングをアプリケーションの必要に応じて実行するためのさまざまなツールへのアクセスを提供します。プラットフォーム上でのロードバランシングについて、ぜひ詳細をお読みになり、学んでください。また、NGINXHAProxyなどの利用可能なツールを使用したロードバランシングの基本に関する詳細なガイドも用意しています。

ぜひ、 CloudSigma’s PaaS 7日間の無料トライアルでお試しいただくか、詳細やプラットフォームのデモをご希望の場合は お問い合わせください。 

7日間無料でお試しください

author

Zhenya Mocheva

著者 · CloudSigma

Preslav DobrevはCloudSigmaのクリエイティブデザイナーであり、従来型および革新的なマーケティングチャネルを活用した一貫性のあるビジネスアイデンティティに注力しています。彼は芸術的なビジョンと戦略的マーケティングを融合させ、インパクトのあるブランドナラティブを生み出すことに長けています。

コメント

コメントはまだありません。最初のコメントを投稿しましょう。