์ž๋™ ๋ฌธ์ œ ํ‘œ์‹œ

๊ฐœ์š”

์ž๋™ ๋ฌธ์ œ ํ‘œ์‹œ(AIS)๋Š” Hybrid ํด๋Ÿฌ์Šคํ„ฐ ๋‚ด์—์„œ ๊ฐ์ง€๋œ ์ง„ํ–‰ ์ค‘์ธ ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋น ๋ฅธ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด ์ •๋ณด์—๋Š” ๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• ๋ฌธ์„œ ๋งํฌ๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ž๋™ ๋ฌธ์ œ ํ‘œ์‹œ๋Š” ์‹œ์Šคํ…œ์—์„œ ๊ฐ์ง€ ๊ฐ€๋Šฅํ•œ ์•Œ๋ ค์ง„ ์ผ๋ฐ˜์ ์ธ ๋ฌธ์ œ๋งŒ ์ฐพ์œผ๋ฉฐ ํด๋Ÿฌ์Šคํ„ฐ ๋‚ด์˜ ๋ชจ๋“  ๋ฌธ์ œ๋ฅผ ๊ฐ์ง€ํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค.

Apigee Hybrid v1.10๋ถ€ํ„ฐ Apigee ๋Ÿฐํƒ€์ž„ ๊ฐ์‹œ์ž ๊ตฌ์„ฑ์š”์†Œ๊ฐ€ ์ปจํŠธ๋กค ํ”Œ๋ ˆ์ธ ๋ฐ Kubernetes API ์„œ๋ฒ„ ์ƒํƒœ๋ฅผ ์ž๋™์œผ๋กœ ์Šค์บ”ํ•˜์—ฌ ๊ตฌ์„ฑ ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์Šค์บ”์€ 60์ดˆ๋งˆ๋‹ค ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. ์›ํ•˜๋Š” ๊ฒฝ์šฐ ๊ฐ„๊ฒฉ์„ ๋ณ€๊ฒฝํ•˜๊ฑฐ๋‚˜ ์Šค์บ”์„ ์ค‘์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

AIS๊ฐ€ ๋ฌธ์ œ๋ฅผ ๊ฐ์ง€ํ•˜๋ฉด Kubernetes API ์„œ๋ฒ„ ๋‚ด์— ์ƒˆ ApigeeIssue ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ธ์Šคํ„ด์Šค์—๋Š” ๋ฌธ์ œ์— ๊ด€ํ•œ ์ •๋ณด์™€ ํŠน์ • ๋ฌธ์ œ์— ๊ด€ํ•œ ๋ฌธ์„œ ๋งํฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์–ด ์Šค์บ”์—์„œ ์ด ๋ฌธ์ œ๊ฐ€ ๋” ์ด์ƒ ๋ฐœ์ƒํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์œผ๋กœ ํ™•์ธ๋˜๋ฉด Kubernetes API ์„œ๋ฒ„์—์„œ ์ž๋™์œผ๋กœ ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค.

์ž๋™ ๋ฌธ์ œ ํ‘œ์‹œ ์‚ฌ์šฉ

kubectl get apigeeissues ๋ช…๋ น์–ด๋กœ ๊ธฐ์กด ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

kubectl -n APIGEE_NAMESPACE get apigeeissues

์˜ˆ๋ฅผ ๋“ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

kubectl -n APIGEE_NAMESPACE get apigeeissues

NAME                                 SEVERITY    AGE URL
vhost-missing-eg-nonprod             Error       1hr https://cloud.google.com/apigee/docs/hybrid/MISSING_ENV_GROUP
control-plane-connectivity-failure   Error       1d  https://cloud.google.com/apigee/docs/hybrid/OLD_TLS_VERSION

ํŠน์ • ๋ฌธ์ œ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์„ ๋ณด๋ ค๋ฉด ๋ฌธ์ œ ์ด๋ฆ„๊ณผ ํ•จ๊ป˜ kubectl describe ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”. ์ด๋ฆ„ ์•ž์— apigeeissues/๋ฅผ ๋ถ™์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค(์˜ˆ: apigeeissues vhost-missing-eg-nonprod).

kubectl -n APIGEE_NAMESPACE describe apigeeissues vhost-missing-eg-nonprod

Name:         vhost-missing-eg-nonprod
Namespace:    apigee
Labels:       
Annotations:  
API Version:  apigee.cloud.google.com/v1alpha1
Kind:         ApigeeIssue
Metadata:
  Creation Timestamp:  2022-08-25T20:41:56Z
  Managed Fields:
    API Version:  apigee.cloud.google.com/v3
  Resource Version:  12345678
  UID:               aaaaaaaa-bbbb-cccc-dddd-eeeeffffgggg
Spec:
  Severity: Error
  Reason: MISSING_ENV_GROUP
  Details: Expected envgroup "nonprod" for ApigeeRouteConfig "my-org-nonprod"
  Documentation: https://cloud.google.com/apigee/docs/hybrid/MISSING_ENV_GROUP
  Ignore: false
  IgnoreReason:
Events: 

์Šค์บ” ๊ฐ„๊ฒฉ ๋ณ€๊ฒฝ

๊ธฐ๋ณธ์ ์œผ๋กœ ๊ฐ์‹œ์ž๋Š” 60์ดˆ๋งˆ๋‹ค ํ•œ ๋ฒˆ์”ฉ ์ปจํŠธ๋กค ํ”Œ๋ ˆ์ธ์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š”์ง€ ์Šค์บ”ํ•ฉ๋‹ˆ๋‹ค. ์Šค์บ” ๊ฐ„๊ฒฉ์„ ๋ณ€๊ฒฝํ•˜๋ ค๋ฉด ์žฌ์ •์˜ ํŒŒ์ผ์—์„œ watcher.args.issueScanInterval ์†์„ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ƒˆ ๊ฐ„๊ฒฉ์„ ์ดˆ ๋‹จ์œ„๋กœ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

watcher:
  args:
    issueScanInterval: 120

๊ตฌ์„ฑ์„ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.

๊ฐ Apigee ํ™˜๊ฒฝ์˜ apigee-env ์ฐจํŠธ๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•ฉ๋‹ˆ๋‹ค.

helm upgrade $ORG_NAME apigee-org/ \
  --namespace APIGEE_NAMESPACE \
  -f OVERRIDES_FILE 

์ž๋™ ๋ฌธ์ œ ํ‘œ์‹œ ์ค‘์ง€

์žฌ์ •์˜ ํŒŒ์ผ์—์„œ watcher.args.enableIssueScanning ์†์„ฑ์„ false๋กœ ์„ค์ •ํ•˜์—ฌ ์ž๋™ ๋ฌธ์ œ ํ‘œ์‹œ๋ฅผ ์ค‘์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

watcher:
  args:
    enableIssueScanning: false

๊ตฌ์„ฑ์„ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.

๊ฐ Apigee ํ™˜๊ฒฝ์˜ apigee-env ์ฐจํŠธ๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•ฉ๋‹ˆ๋‹ค.

helm upgrade $ORG_NAME apigee-org/ \
  --namespace APIGEE_NAMESPACE \
  -f OVERRIDES_FILE 
์ž๋™ ๋ฌธ์ œ ํ‘œ์‹œ์—์„œ ๋‹ค์Œ์„ ํฌํ•จํ•œ ๋ฌธ์ œ ํ•ด๊ฒฐ ๊ฐ€์ด๋“œ์— ๋Œ€ํ•œ ๋งํฌ๋ฅผ ์ง์ ‘ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Apigee ๋ฌธ์ œ ํ•ด๊ฒฐ ๊ฐ€์ด๋“œ ๊ฐœ์š” ๋ฐ ๋ชฉ๋ก์€ Apigee X ๋ฐ Apigee Hybrid ํ”Œ๋ ˆ์ด๋ถ ์†Œ๊ฐœ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.