2.3. OpenShift リソースの作成
このセクションでは、これらの新しい要素の作成に必要な手順について説明します。3scale 2.6 リリースの一環として、次の OpenShift 要素が追加されました。
データベース用の新しい ImageStreams:
- backend-redis
- system-redis
- system-memcached
- system-mysql
- zync-database-postgresql
以下の OpenShift オブジェクトを含む新しい
zync-queコンポーネント:-
zync-queDeploymentConfig -
zync-que-saServiceAccount -
zync-queロール -
zync-que-rolebindingRoleBinding
-
新しい OpenShift 要素を作成するには、次の手順に従います。
3scale 2.5 のデプロイ時に設定された WildcardDomain を含む次の環境変数を作成します。
THREESCALE_WILDCARD_DOMAIN=$(oc get configmap system-environment -o json | jq .data.THREESCALE_SUPERDOMAIN -r)
$ THREESCALE_WILDCARD_DOMAIN=$(oc get configmap system-environment -o json | jq .data.THREESCALE_SUPERDOMAIN -r)Copy to Clipboard Copied! Toggle word wrap Toggle overflow THREESCALE_WILDCARD_DOMAIN 環境変数が空ではなく、3scale 2.5 のデプロイ時に設定されたワイルドカードドメインと同じ値であることを確認します。
echo ${THREESCALE_WILDCARD_DOMAIN}$ echo ${THREESCALE_WILDCARD_DOMAIN}Copy to Clipboard Copied! Toggle word wrap Toggle overflow ImageStreams に設定された
ImportPolicyImageStream 値を含む次の環境変数を作成します。IMPORT_POLICY_VAL=$(oc get imagestream amp-system -o json | jq -r ".spec.tags[0].importPolicy.insecure")
$ 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" fiCopy to Clipboard Copied! Toggle word wrap Toggle overflow IMPORT_POLICY_VAL 環境変数が true または false であることを確認します。
echo ${IMPORT_POLICY_VAL}$ echo ${IMPORT_POLICY_VAL}Copy to Clipboard Copied! Toggle word wrap Toggle overflow 3scale Pod の
アプリKubernetes ラベルの現在の値を含む次の環境変数を作成します。たとえば、backend-listenerPod から取得します。DEPLOYED_APP_LABEL=$(oc get dc backend-listener -o json | jq .spec.template.metadata.labels.app -r)
$ DEPLOYED_APP_LABEL=$(oc get dc backend-listener -o json | jq .spec.template.metadata.labels.app -r)Copy to Clipboard Copied! Toggle word wrap Toggle overflow DEPLOYED_APP_LABEL 環境変数が空でも
nullでもないことを確認します。echo ${DEPLOYED_APP_LABEL}$ echo ${DEPLOYED_APP_LABEL}Copy to Clipboard Copied! Toggle word wrap Toggle overflow 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}$ 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}Copy to Clipboard Copied! Toggle word wrap Toggle overflow いくつかのエラーが表示されます。一部の要素は 3scale 2.5 にすでに存在していたため、これらは想定範囲内です。エラーでない行で、表示されているものには、以下が挙げられます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 前述のすべての新しい ImageStreams と、すべての新しい zync-que 関連要素が存在することを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 前のコマンドはすべて、それらが作成されたことを示す出力を返します。また、次のように入力した場合:
oc get pods | grep -i zync-que
$ oc get pods | grep -i zync-queCopy to Clipboard Copied! Toggle word wrap Toggle overflow そのステータスが エラー またはクラッシュしていることを示すその他のエラーであることがわかります。この時点では Zync イメージが更新されていないため、これは想定範囲内です。これは、「3scale イメージのアップグレード」セクション のポイント 4 で行われます。