3.3.4. MySQL リソースから 3scale Operator 参照を削除する
APIManager CR が削除されても、それに関連付けられているデータベース Pod と PVC が削除されないようにするには、ownerReferences を削除する必要があります。
system-mysql デプロイメントから metadata.OwnerReferences を削除します。
oc patch deployment system-mysql --type=json -p='[{"op": "remove", "path": "/metadata/ownerReferences"}]'
mysql-storage PVC から metadata.OwnerReferences を削除します。
oc patch pvc mysql-storage --type=json -p='[{"op": "remove", "path": "/metadata/ownerReferences"}]'
3scale に関連する metadata.labels と、3scale に関連する spec.template.metadata.labels を削除します。
oc patch deployment system-mysql --type=json -p='[ {"op": "remove", "path": "/metadata/labels/app"}, {"op": "remove", "path": "/metadata/labels/threescale_component"}, {"op": "remove", "path": "/metadata/labels/threescale_component_element"}, {"op": "remove", "path": "/spec/template/metadata/labels/app"}, {"op": "remove", "path": "/spec/template/metadata/labels/rht.comp_ver"}, {"op": "remove", "path": "/spec/template/metadata/labels/rht.prod_name"}, {"op": "remove", "path": "/spec/template/metadata/labels/threescale_component_element"}, {"op": "remove", "path": "/spec/template/metadata/labels/threescale_component"}, {"op": "remove", "path": "/spec/template/metadata/labels/rht.prod_ver"}, {"op": "remove", "path": "/spec/template/metadata/labels/com.company"}, {"op": "remove", "path": "/spec/template/metadata/labels/rht.subcomp_t"}, {"op": "remove", "path": "/spec/template/metadata/labels/rht.subcomp"}, {"op": "remove", "path": "/spec/template/metadata/labels/rht.comp"}]'
mysql-storage PVC から metadata.labels を削除します。
oc patch pvc mysql-storage --type=json -p='[ {"op": "remove", "path": "/metadata/labels/app"}, {"op": "remove", "path": "/metadata/labels/threescale_component"}, {"op": "remove", "path": "/metadata/labels/threescale_component_element"} ]'
mysql-extra-conf から ownerReferences と 3scale ラベルを削除します。
oc patch configmap mysql-extra-conf --type=json -p='[{"op": "remove", "path": "/metadata/ownerReferences"}]'
oc label configmap mysql-extra-conf app- threescale_component- threescale_component_element-
system-mysql デプロイメント用の新しいサービスアカウントを作成します。現在使用されている AMP サービスアカウントは、3scale オペレーターによって管理されています。
oc create serviceaccount system-mysql-sa
system-mysql デプロイメント内のサービスアカウント参照を system-mysql-sa に変更します。
oc patch deployment system-mysql --type=json -p='[{"op": "remove", "path": "/spec/template/spec/serviceAccount"},{"op": "replace", "path": "/spec/template/spec/serviceAccountName", "value": "system-mysql-sa"}]'
イメージトリガーを削除して、Operator の新しいバージョンがデプロイメントでイメージの変更をトリガーしないようにします。
oc set triggers deployment system-mysql --remove-all
oc set triggers deployment system-mysql --from-config