第2章 Helm チャートを使用した AKS への Developer Hub のデプロイ


Developer Hub アプリケーションを Azure Kubernetes Service (AKS) にデプロイすると、アプリケーションのビルド、テスト、デプロイのための包括的なソリューションにアクセスできます。

前提条件

  • アクティブなサブスクリプションを持つ Microsoft Azure アカウントがある。
  • Azure CLI がインストールされている。
  • kubectl CLI がインストールされている。
  • kubectl を使用してクラスターにログインしており、developer または admin 権限を持っている。
  • Helm 3 以降がインストールされている。

AKS の詳細と基本的な Developer Hub デプロイメントの比較

  • 権限の問題: Developer Hub コンテナーでは、特定の操作を試行したときに権限関連のエラー (Permission denied など) が発生する可能性があります。このエラーは、PodSpec.securityContextfsGroup を調整することで解決できます。
  • Ingress 設定: AKS では、インストールした Developer Hub インスタンスにアクセスするために、Ingress を設定することが不可欠です。Developer Hub インスタンスにアクセスするには、次のコマンドを使用して、NGINX ベースの Ingress コントローラーであるルーティングアドオンを有効にする必要があります。

    az aks approuting enable --resource-group <your_ResourceGroup> --name <your_ClusterName>
    ヒント

    Azure CLI 拡張機能 aks-preview のインストールが必要な場合があります。拡張機能が自動的にインストールされない場合は、次のコマンドを使用して手動でインストールする必要があります。

    az extension add --upgrade -n aks-preview --allow-preview true
    注記

    Ingress コントローラーをインストールすると、Ingress コントローラーを含む app-routing-system namespace がクラスターにデプロイされます。後で Developer Hub アプリケーションにアクセスできるように、インストールした Ingress コントローラーからの Developer Hub アプリケーションのアドレス (たとえば、108.141.70.228) をメモしておきます。これは、後で <app_address> として参照されます。

    kubectl get svc nginx --namespace app-routing-system -o jsonpath='{.status.loadBalancer.ingress[0].ip}'
  • namespace の管理: 次のコマンドを使用して、AKS で Developer Hub デプロイメントの専用 namespace を作成できます。

    kubectl create namespace <your_namespace>

手順

  1. 次のコマンドを実行して AKS にログインします。

    az login [--tenant=<optional_directory_name>]
  2. 次のコマンドを実行してリソースグループを作成します。

    az group create --name <resource_group_name> --location <location>
    ヒント

    次のコマンドを実行すると、利用可能なリージョンをリスト表示できます。

    az account list-locations -o table
  3. 次のコマンドを実行して AKS クラスターを作成します。

    az aks create \
    --resource-group <resource_group_name> \
    --name <cluster_name> \
    --enable-managed-identity \
    --generate-ssh-keys

    追加オプションは --help を参照してください。

  4. 次のコマンドを実行してクラスターに接続します。

    az aks get-credentials --resource-group <resource_group_name> --name <cluster_name>

    上記のコマンドは、Kubernetes クライアントを設定し、AKS クラスターを指すように kubeconfig の現在のコンテキストを設定します。

  5. ターミナルを開き、次のコマンドを実行して Helm チャートリポジトリーを追加します。

    helm repo add openshift-helm-charts https://charts.openshift.io/
  6. <rhdh> namespace を作成してアクティブ化します。

    DEPLOYMENT_NAME=<redhat-developer-hub>
    NAMESPACE=<rhdh>
    kubectl create namespace ${NAMESPACE}
    kubectl config set-context --current --namespace=${NAMESPACE}
  7. 次のコマンドを実行して、Red Hat Ecosystem から Developer Hub イメージをプルするために使用するプルシークレットを作成します。

    kubectl -n $NAMESPACE create secret docker-registry rhdh-pull-secret \
        --docker-server=registry.redhat.io \
        --docker-username=<redhat_user_name> \
        --docker-password=<redhat_password> \
        --docker-email=<email>
  8. 次のテンプレートを使用して、values.yaml という名前のファイルを作成します。

    global:
      host: <app_address>
    route:
      enabled: false
    upstream:
      ingress:
        enabled: true
        className: webapprouting.kubernetes.azure.com
        host:
      backstage:
        image:
          pullSecrets:
            - rhdh-pull-secret
        podSecurityContext:
          fsGroup: 3000
      postgresql:
        image:
          pullSecrets:
            - rhdh-pull-secret
        primary:
          podSecurityContext:
            enabled: true
            fsGroup: 3000
      volumePermissions:
        enabled: true
  9. 次のコマンドを実行して、Helm チャートを使用して Developer Hub をインストールします。

    helm -n $NAMESPACE install -f values.yaml $DEPLOYMENT_NAME openshift-helm-charts/redhat-developer-hub --version 1.3.5
  10. デプロイメントのステータスを確認します。

    kubectl get deploy $DEPLOYMENT_NAME -n $NAMESPACE
  11. クラスターの Developer Hub データベースパスワードとルーターベース URL の値を使用して、Developer Hub Helm チャートのインスタンスを設定します。

    PASSWORD=$(kubectl get secret redhat-developer-hub-postgresql -o jsonpath="{.data.password}" | base64 -d)
    CLUSTER_ROUTER_BASE=$(kubectl get route console -n openshift-console -o=jsonpath='{.spec.host}' | sed 's/^[^.]*\.//')
    helm upgrade $DEPLOYMENT_NAME -i "https://github.com/openshift-helm-charts/charts/releases/download/redhat-redhat-developer-hub-1.3.5/redhat-developer-hub-1.3.5.tgz" \
        --set global.clusterRouterBase="$CLUSTER_ROUTER_BASE" \
        --set global.postgresql.auth.password="$PASSWORD"
  12. 次のコマンドを実行して、実行中の Developer Hub インスタンスの URL を表示します。

    echo "https://$DEPLOYMENT_NAME-$NAMESPACE.$CLUSTER_ROUTER_BASE"

検証

  • 実行中の Developer Hub インスタンスの URL をブラウザーで開き、Developer Hub を使用します。

アップグレード

  • デプロイメントをアップグレードするには、次のコマンドを実行します。

    helm upgrade $DEPLOYMENT_NAME -i https://github.com/openshift-helm-charts/charts/releases/download/redhat-redhat-developer-hub-1.3.5/redhat-developer-hub-1.3.5.tgz

削除

  • デプロイメントを削除するには、次のコマンドを実行します。

    helm -n $NAMESPACE delete $DEPLOYMENT_NAME
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

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

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

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

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

Legal Notice

Theme

© 2026 Red Hat
トップに戻る