2.3. OpenShift リソースの作成


このセクションでは、これらの新しい要素の作成に必要な手順について説明します。3scale 2.6 リリースの一環として、次の OpenShift 要素が追加されました。

  • データベース用の新しい ImageStreams:

    • backend-redis
    • system-redis
    • system-memcached
    • system-mysql
    • zync-database-postgresql
  • 以下の OpenShift オブジェクトを含む新しい zync-que コンポーネント:

    • zync-que DeploymentConfig
    • zync-que-sa ServiceAccount
    • zync-que ロール
    • zync-que-rolebinding RoleBinding

新しい OpenShift 要素を作成するには、次の手順に従います。

  1. 3scale 2.5 のデプロイ時に設定された WildcardDomain を含む次の環境変数を作成します。

    $ THREESCALE_WILDCARD_DOMAIN=$(oc get configmap system-environment  -o json | jq .data.THREESCALE_SUPERDOMAIN -r)
  2. THREESCALE_WILDCARD_DOMAIN 環境変数が空ではなく、3scale 2.5 のデプロイ時に設定されたワイルドカードドメインと同じ値であることを確認します。

    $ echo ${THREESCALE_WILDCARD_DOMAIN}
  3. ImageStreams に設定された ImportPolicy ImageStream 値を含む次の環境変数を作成します。

    $ IMPORT_POLICY_VAL=$(oc get imagestream amp-system -o json | jq -r ".spec.tags[0].importPolicy.insecure")
    if [ "$IMPORT_POLICY_VAL" == "null" ]; then
      IMPORT_POLICY_VAL="false"
    fi
  4. IMPORT_POLICY_VAL 環境変数が true または false であることを確認します。

    $ echo ${IMPORT_POLICY_VAL}
  5. 3scale Pod の アプリ Kubernetes ラベルの現在の値を含む次の環境変数を作成します。たとえば、backend-listener Pod から取得します。

    $ DEPLOYED_APP_LABEL=$(oc get dc backend-listener -o json | jq .spec.template.metadata.labels.app -r)
  6. DEPLOYED_APP_LABEL 環境変数が空でも null でもないことを確認します。

    $ echo ${DEPLOYED_APP_LABEL}
  7. 3scale 2.6 amp.yml 標準シナリオテンプレートを使用して、2.6 リリース用の新しい OpenShift オブジェクトをデプロイします。

    $ oc new-app -f amp.yml --param WILDCARD_DOMAIN=${THREESCALE_WILDCARD_DOMAIN} --param IMAGESTREAM_TAG_IMPORT_INSECURE=${IMPORT_POLICY_VAL} --param APP_LABEL=${DEPLOYED_APP_LABEL}

    いくつかのエラーが表示されます。一部の要素は 3scale 2.5 にすでに存在していたため、これらは想定範囲内です。エラーでない行で、表示されているものには、以下が挙げられます。

    imagestream.image.openshift.io "zync-database-postgresql" created
    imagestream.image.openshift.io "backend-redis" created
    imagestream.image.openshift.io "system-redis" created
    imagestream.image.openshift.io "system-memcached" created
    imagestream.image.openshift.io "system-mysql" created
    role.rbac.authorization.k8s.io "zync-que-role" created
    serviceaccount "zync-que-sa" created
    rolebinding.rbac.authorization.k8s.io "zync-que-rolebinding" created
    deploymentconfig.apps.openshift.io "zync-que" created
  8. 前述のすべての新しい ImageStreams と、すべての新しい zync-que 関連要素が存在することを確認します。

    $ oc get is system-redis
    $ oc get is system-mysql
    $ oc get is system-memcached
    $ oc get is zync-database-postgresql
    $ oc get is backend-redis
    $ oc get role zync-que-role
    $ oc get sa zync-que-sa
    $ oc get rolebinding zync-que-rolebinding
    $ oc get dc zync-que

    前のコマンドはすべて、それらが作成されたことを示す出力を返します。また、次のように入力した場合:

    $ oc get pods | grep -i zync-que

    そのステータスが エラー またはクラッシュしていることを示すその他のエラーであることがわかります。この時点では Zync イメージが更新されていないため、これは想定範囲内です。これは、「3scale イメージのアップグレード」セクション のポイント 4 で行われます。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

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

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

会社概要

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

© 2024 Red Hat, Inc.