2.5.4. ロードバランサーサービスの作成


OpenShift Container Platform でアプリケーションの受信トラフィックを効率的に分散し、高い可用性を確保するには、ロードバランサーサービスを作成します。

前提条件

  • 公開するプロジェクトとサービスがあること。
  • クラウドプロバイダーがロードバランサーをサポートしている。

手順

  1. OpenShift Container Platform にログインします。
  2. 公開するサービスが置かれているプロジェクトを読み込みます。

    コマンドの例

    $ oc project project1

  3. コントロールプレーンノード上のテキストファイルを開き、以下のテキストをファイルに貼り付けてください。必要に応じてファイルを編集してください。

    ロードバランサー設定ファイルのサンプル

    apiVersion: v1
    kind: Service
    metadata:
      name: egress-2
    spec:
      ports:
      - name: db
        port: 3306
      loadBalancerIP:
      loadBalancerSourceRanges:
      - 10.0.0.0/8
      - 192.168.0.0/16
      type: LoadBalancer
      selector:
        name: mysql

    ここでは、以下のようになります。

    metadata.name
    ロードバランサーサービスの説明的な名前を指定します。
    ポート.ポート
    公開したいサービスがリッスンしているポートと同じポートを指定します。
    loadBalancerSourceRanges
    ロードバランサーを通過するトラフィックを制限する特定の IP アドレスのリストを指定します。クラウドプロバイダーがこの機能をサポートしていない場合、このパラメーターは無視されます。
    type
    タイプとして ロードバランサーを 指定します。
    セレクター名

    サービスの名前を指定します。

    注記

    ロードバランサーを経由するトラフィックを特定の IP アドレスに制限するには、spec.endpointPublishingStrategy.loadBalancer.allowedSourceRanges Ingress Controller パラメーターを使用します。loadBalancerSourceRanges パラメーターを設定しないでください。

  4. ファイルを保存し、終了します。
  5. 以下のコマンドを実行してサービスを作成します。

    $ oc create -f <file_name>

    以下に例を示します。

    $ oc create -f mysql-lb.yaml
  6. 以下のコマンドを実行して新規サービスを表示します。

    $ oc get svc

    出力例

    NAME       TYPE           CLUSTER-IP      EXTERNAL-IP                             PORT(S)          AGE
    egress-2   LoadBalancer   172.30.22.226   ad42f5d8b303045-487804948.example.com   3306:30357/TCP   15m

    有効にされたクラウドプロバイダーがある場合、サービスには外部 IP アドレスが自動的に割り当てられます。

  7. マスターサーバー上で、curl などのツールを使用して、パブリック IP アドレスを使用してサービスにアクセスできることを確認してください。

    $ curl <public_ip>:<port>

    以下に例を示します。

    $ curl 172.29.121.74:3306

    このセクションの例では、クライアントアプリケーションを必要とする MySQL サービスを使用しています。Got packets out of order のメッセージと共に文字ストリングを取得する場合は、このサービスに接続していることになります。

    MySQL クライアントがある場合は、標準 CLI コマンドでログインします。

    $ mysql -h 172.30.131.89 -u admin -p

    出力例

    Enter password:
    Welcome to the MariaDB monitor.  Commands end with ; or \g.
    
    MySQL [(none)]>

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る