2.7. DeploymentConfig 데이터베이스를 ImageStreams로 마이그레이션
2.6에서는 이미지 URL에 대한 직접 참조 대신 ImageStreams에서 컨테이너 이미지를 가져오도록 데이터베이스가 포함된 배포된 3scale DeploymentConfig가 마이그레이션되었습니다.
backend-redis
DeploymentConfig를 마이그레이션하여 backend-redis ImageStream을 사용합니다.oc patch dc/backend-redis -p "$(cat db-imagestream-patches/backend-redis-json.patch)" --type json
$ oc patch dc/backend-redis -p "$(cat db-imagestream-patches/backend-redis-json.patch)" --type json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
이렇게 하면
backend-redis
DeploymentConfig의 재배포가 트리거되고 DeploymentConfig에backend-redis
ImageStream을 참조하는 ImageChange 트리거가 있습니다. backend-worker
,backend-cron
또는backend-listener
가backend-redis
포드를 재배포할 때까지 일시적으로 실패할 수 있습니다.DeploymentConfig Pod가 재부팅되고 상태가 다시 준비될 때까지 기다립니다.
-
이렇게 하면
system-redis
ImageStream을 사용하도록system-redis
DeploymentConfig 마이그레이션:oc patch dc/system-redis -p "$(cat db-imagestream-patches/system-redis-json.patch)" --type json
$ oc patch dc/system-redis -p "$(cat db-imagestream-patches/system-redis-json.patch)" --type json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
이렇게 하면
system-redis
DeploymentConfig의 재배포가 트리거되고 DeploymentConfig에backend-redis
ImageStream을 참조하는 ImageChange 트리거가 있습니다. - DeploymentConfig Pod가 재부팅되고 상태가 다시 준비될 때까지 기다립니다.
-
이렇게 하면
system-memcache
d ImageStream을 사용하도록 system-memcache
DeploymentConfig를 마이그레이션합니다.oc patch dc/system-memcache -p "$(cat db-imagestream-patches/system-memcached-json.patch)" --type json
$ oc patch dc/system-memcache -p "$(cat db-imagestream-patches/system-memcached-json.patch)" --type json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
이렇게 하면
system-memcache
DeploymentConfig의 재배포가 트리거되고 DeploymentConfig에system-memcached
ImageStream을 참조하는 ImageChange 트리거가 있습니다. - DeploymentConfig Pod가 재부팅되고 상태가 다시 준비될 때까지 기다립니다.
-
이렇게 하면
system-mysql
ImageStream을 사용하도록system-mysql
DeploymentConfig 마이그레이션:oc patch dc/system-mysql -p "$(cat db-imagestream-patches/system-mysql-json.patch)" --type json
$ oc patch dc/system-mysql -p "$(cat db-imagestream-patches/system-mysql-json.patch)" --type json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
이렇게 하면
system-mysql
DeploymentConfig의 재배포가 트리거되고 DeploymentConfig에system-mysql
ImageStream을 참조하는 ImageChange 트리거가 있습니다. - DeploymentConfig Pod가 재부팅되고 상태가 다시 준비될 때까지 기다립니다.
-
이렇게 하면
Migrate
zync-database
DeploymentConfig to usezync-database-postgresql
ImageStream:oc patch dc/zync-database -p "$(cat db-imagestream-patches/zync-database-postgresql.patch)"
$ oc patch dc/zync-database -p "$(cat db-imagestream-patches/zync-database-postgresql.patch)"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
이렇게 하면 the
zync-database
DeploymentConfig의 재배포가 트리거되고 DeploymentConfig에 이제zync-database-postgresql
ImageStream을 참조하는 ImageChange 트리거가 있습니다. -
The
zync
DeploymentConfig 포드는zync-database
를 다시 사용할 수 있을 때까지 일시적으로 실패할 수 있으며, 준비 상태가 다시 준비될 때까지 다소 시간이 걸릴 수 있습니다. 몇 분 후에 모든 'zync' DeploymentConfig Pod가 Ready 상태인지 확인합니다. - 계속하기 전에 DeploymentConfig Pod가 재부팅되고 준비 상태가 다시 준비될 때까지 기다립니다.
-
이렇게 하면 the
더 이상 사용되지 않는
postgresql
ImageStream을 제거합니다.oc delete ImageStream postgresql
$ oc delete ImageStream postgresql
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 성공을 확인하려면 다음을 확인합니다.
- 이제 모든 데이터베이스 관련 DeploymentConfigs에서 ImageStream을 사용합니다. 해당 데이터베이스 ImageStream을 가리키는 ImageChange 트리거가 생성되었는지 확인할 수 있습니다.
-
ImageChange 트리거에는
registry.redhat.io
를 가리키는 URL이 포함된lastTriggeredImage
필드가 있습니다.