πŸš€ μΏ λ²„λ„€ν‹°μŠ€ κ³ μˆ˜λ“€μ΄ λ§ν•˜λŠ” "뼈 μ•„ν”ˆ μ‹€μ „ κ΅ν›ˆ" 5κ°€μ§€ - CNCF 곡식 λΈ”λ‘œκ·Έ πŸ› οΈ

μΏ λ²„λ„€ν‹°μŠ€ 관리 전문가듀이 얻은 뼈 μ•„ν”ˆ κ΅ν›ˆ 5κ°€μ§€

μΏ λ²„λ„€ν‹°μŠ€λŠ” ν™•μž₯ κ°€λŠ₯ν•œ 인프라 배포 방식을 ν˜μ‹ ν–ˆμ§€λ§Œ, κ·Έ μ΄λ©΄μ—λŠ” 벀더듀이 잘 μ•Œλ €μ£Όμ§€ μ•ŠλŠ” 운영의 λ³΅μž‘μ„±κ³Ό λΉ„μš© λ¬Έμ œκ°€ μˆ¨μ–΄ μžˆμŠ΅λ‹ˆλ‹€. μˆ˜λ…„κ°„ μΏ λ²„λ„€ν‹°μŠ€λ₯Ό μ„€κ³„ν•˜κ³  μš΄μ˜ν•΄ 온 μ „λ¬Έκ°€λ“€μ˜ κ²½ν—˜μ„ λ°”νƒ•μœΌλ‘œ, 쑰직이 μΏ λ²„λ„€ν‹°μŠ€ λ„μž… μ‹œ κ²ͺ게 λ˜λŠ” 5κ°€μ§€ 핡심 κ΅ν›ˆμ„ μ •λ¦¬ν–ˆμŠ΅λ‹ˆλ‹€.

1. :downcast_face_with_sweat: 운영 μ˜€λ²„ν—€λ“œλŠ” 항상 νŒ€μ˜ μ˜ˆμƒμ„ λ›°μ–΄λ„˜μŠ΅λ‹ˆλ‹€. (Operational overhead catches teams off guard)

AKS, EKS, GKE 같은 κ΄€λ¦¬ν˜• μ„œλΉ„μŠ€λ₯Ό μ‚¬μš©ν•˜λ©΄ ν΄λŸ¬μŠ€ν„°λ₯Ό λ„μš°λŠ” 것은 μ‰½μŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ **β€œν”„λ‘œλ•μ…˜ ν™˜κ²½ μš΄μ˜β€**은 μ™„μ „νžˆ λ‹€λ₯Έ μ΄μ•ΌκΈ°μž…λ‹ˆλ‹€.

  • μˆ¨κ²¨μ§„ μž‘μ—…λ“€: DNS, λ„€νŠΈμ›Œν‚Ή, μŠ€ν† λ¦¬μ§€, λͺ¨λ‹ˆν„°λ§, λ‘œκΉ…, μ‹œν¬λ¦Ώ 관리, λ³΄μ•ˆ λ“± μˆ˜λ§Žμ€ μ• λ“œμ˜¨(add-on)을 직접 관리해야 ν•©λ‹ˆλ‹€.
  • λ‚΄λΆ€ 지원 λΆ€λ‹΄: κ°œλ°œνŒ€, μš΄μ˜νŒ€, 데이터 κ³Όν•™μžλ“€μ˜ μš”μ²­μ„ μ²˜λ¦¬ν•˜λ‹€ 보면 λ‚΄λΆ€ μŠ¬λž™ 채널은 금방 λ§ˆλΉ„λ©λ‹ˆλ‹€.
  • ν”Œλž«νΌ μ—”μ§€λ‹ˆμ–΄λ§μ˜ ν•„μš”μ„±: κ°œλ°œμžκ°€ μ‰½κ²Œ 배포할 수 μžˆλ„λ‘ λ°±μ—”λ“œ κΈ°λŠ₯을 λ§Œλ“€μ–΄μ•Ό ν•˜μ§€λ§Œ, 좔상화가 κ³ λ„ν™”λ μˆ˜λ‘ 개발자 슀슀둜 문제λ₯Ό ν•΄κ²°ν•˜κΈ°λŠ” 더 μ–΄λ €μ›Œμ§‘λ‹ˆλ‹€. νŽΈμ˜μ„±κ³Ό 투λͺ…μ„± μ‚¬μ΄μ˜ κ· ν˜•μ΄ ν•„μš”ν•©λ‹ˆλ‹€.

2. :unlocked: μˆ¨κ²¨μ§„ μ‚¬κ°μ§€λŒ€: λ³΄μ•ˆ λ¬Έμ œκ°€ ν΄λŸ¬μŠ€ν„°λ₯Ό μœ„ν—˜μ— λΉ λœ¨λ¦½λ‹ˆλ‹€. (Hidden corners: Security issues put clusters at risk)

ν΄λΌμš°λ“œ 벀더가 μ œκ³΅ν•˜λŠ” ν΄λŸ¬μŠ€ν„°λŠ” λΉ λ₯΄μ§€λ§Œ, **λ³΄μ•ˆμ΄ κ°•ν™”λœ μƒνƒœ(Hardened)**둜 μ œκ³΅λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

  • κΈ°λ³Έ μ„€μ •μ˜ μœ„ν—˜μ„±: κΈ°λ³Έ 섀정은 거의 λŒ€λΆ€λΆ„ μ•ˆμ „ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. λˆ„κ°€ μ–΄λ–€ μ ‘κ·Ό κΆŒν•œμ„ κ°€μ§ˆμ§€(RBAC) μ‹ μ€‘ν•˜κ²Œ 섀계해야 ν•©λ‹ˆλ‹€. μΏ λ²„λ„€ν‹°μŠ€μ—λŠ” 자체적인 IAM이 μ—†μœΌλ―€λ‘œ κΆŒν•œ 관리에 μ‹€νŒ¨ν•˜λ©΄ λ„ˆλ¬΄ λ§Žμ€ κΆŒν•œμ„ λΆ€μ—¬ν•˜κ²Œ λ©λ‹ˆλ‹€.
  • λ„€νŠΈμ›Œν¬ 격리 λΆ€μž¬: λ„€μž„μŠ€νŽ˜μ΄μŠ€λŠ” λ…Όλ¦¬μ μœΌλ‘œ λΆ„λ¦¬λ˜μ–΄ μžˆμ§€λ§Œ, λ„€νŠΈμ›Œν¬λŠ” 기본적으둜 뚫렀 μžˆμŠ΅λ‹ˆλ‹€. λ„€νŠΈμ›Œν¬ μ •μ±…(Network Policy)을 톡해 λͺ…μ‹œμ μœΌλ‘œ 차단해야 ν•©λ‹ˆλ‹€.
  • 이미지 λ³΄μ•ˆ: 퍼블릭 λ ˆμ§€μŠ€νŠΈλ¦¬μ—μ„œ 이미지λ₯Ό κ·Έλƒ₯ κ°€μ Έλ‹€ μ“°λ©΄ λ³΄μ•ˆ 취약점에 λ…ΈμΆœλ©λ‹ˆλ‹€. λͺ¨λ“  이미지λ₯Ό μŠ€μΊ”ν•˜κ³  κ²€μ¦ν•˜λŠ” μ ˆμ°¨κ°€ ν•„μˆ˜μ μž…λ‹ˆλ‹€.

3. :chart_increasing: μ„±μž₯을 κ°€λ‘œλ§‰λŠ” μŠ€μΌ€μΌλ§(ν™•μž₯)의 어렀움. (Scaling challenges that stall growth and agility)

μΏ λ²„λ„€ν‹°μŠ€λŠ” ν™•μž₯에 λŠ₯ν•˜μ§€λ§Œ, λ‹¨μˆœνžˆ μ˜€ν† μŠ€μΌ€μΌλŸ¬(Autoscaler)λ₯Ό μΌ λ‹€κ³  ν•΄κ²°λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 잘λͺ»ν•˜λ©΄ λΉ„μš© 폭탄과 μ„±λŠ₯ μ €ν•˜λ₯Ό κ²ͺμŠ΅λ‹ˆλ‹€.

  • λ…Έλ“œ μŠ€μΌ€μΌλ§κ³Ό λΉ„μš©: λ…Έλ“œ μ˜€ν† μŠ€μΌ€μΌλŸ¬μ— μƒν•œμ„ μ„ 두지 μ•Šκ±°λ‚˜ μΈμŠ€ν„΄μŠ€ νƒ€μž…μ„ μ§€μ •ν•˜μ§€ μ•ŠμœΌλ©΄, μΉ΄νŽœν„°(Karpenter) 같은 도ꡬ가 λ¬΄μž‘μ • λΉ„μ‹Ό λŒ€ν˜• λ…Έλ“œλ₯Ό 선택해 μ—„μ²­λ‚œ ν΄λΌμš°λ“œ λΉ„μš©μ„ 청ꡬ할 수 μžˆμŠ΅λ‹ˆλ‹€.
  • λΆ€μ μ ˆν•œ μ§€ν‘œ: CPUλ‚˜ λ©”λͺ¨λ¦¬ μ‚¬μš©λŸ‰λ§ŒμœΌλ‘œ νŒŒλ“œ(Pod)λ₯Ό μŠ€μΌ€μΌλ§ν•˜λŠ” 것은 λΆ€μ •ν™•ν•©λ‹ˆλ‹€. μ‹€μ œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜ λΆ€ν•˜λ₯Ό λ°˜μ˜ν•˜λŠ” 'μ΄ˆλ‹Ή μš”μ²­ 수(RPS)'λ‚˜ β€˜ν(Queue) 크기’ 같은 μ»€μŠ€ν…€ μ§€ν‘œλ₯Ό μ‚¬μš©ν•΄μ•Ό λΉ„μš©κ³Ό μ„±λŠ₯을 λͺ¨λ‘ μž‘μ„ 수 μžˆμŠ΅λ‹ˆλ‹€.

4. :man_technologist: 인재 확보: 높은 λΉ„μš©κ³Ό 기술 격차. (Talent acquisition: High talent costs and skill gaps)

κ°€μž₯ μ€‘μš”ν•œ λ¦¬μ†ŒμŠ€λŠ” **β€˜μ‚¬λžŒβ€™**μž…λ‹ˆλ‹€.

  • ν¬μ†Œν•œ 인재: ν”„λ‘œλ•μ…˜ ν™˜κ²½μ—μ„œ μΏ λ²„λ„€ν‹°μŠ€λ₯Ό 깊이 있게 μš΄μ˜ν•΄ λ³Έ κ²½ν—˜μžλŠ” 맀우 μ μŠ΅λ‹ˆλ‹€. λ‘œμ»¬μ—μ„œ ν…ŒμŠ€νŠΈν•΄ λ³Έ κ²½ν—˜κ³Ό λŒ€κ·œλͺ¨ 운영 κ²½ν—˜μ€ μ²œμ§€ μ°¨μ΄μž…λ‹ˆλ‹€.
  • 높은 λΉ„μš©: 인λ ₯ λΆ€μ‘±μœΌλ‘œ 인해 μ „λ¬Έκ°€λŠ” 맀우 높은 연봉을 μš”κ΅¬ν•©λ‹ˆλ‹€.
  • 운영 연속성: 단 ν•œ λͺ…μ˜ μ—”μ§€λ‹ˆμ–΄κ°€ μž‘μ„±ν•œ 슀크립트둜 운영되던 ν΄λŸ¬μŠ€ν„°λŠ” κ·Έ μ‚¬λžŒμ΄ λ– λ‚˜λŠ” μˆœκ°„ β€˜μ—…λ°μ΄νŠΈ λΆˆκ°€λŠ₯ν•œβ€™ λ ˆκ±°μ‹œκ°€ λ˜μ–΄λ²„λ¦½λ‹ˆλ‹€.

5. :building_construction: κ°λ‹Ήν•˜κΈ° νž˜λ“€ μ •λ„λ‘œ μŒ“μ΄λŠ” 기술 뢀채. (Technical debt piling up faster than teams can manage)

물리 μ„œλ²„ κ΄€λ¦¬λŠ” μ—†μ–΄μ‘Œμ§€λ§Œ, μƒνƒœκ³„μ˜ λ³€ν™” 속도가 μƒˆλ‘œμš΄ 기술 뢀채λ₯Ό λ§Œλ“­λ‹ˆλ‹€.

  • λŠμž„μ—†λŠ” μ—…κ·Έλ ˆμ΄λ“œ: μΏ λ²„λ„€ν‹°μŠ€ μ½”μ–΄λŠ” λ¬Όλ‘ , CoreDNSλ‚˜ CNI 같은 ν•„μˆ˜ μ• λ“œμ˜¨λ“€λ„ 계속 μ—…λ°μ΄νŠΈν•΄μ•Ό ν•©λ‹ˆλ‹€. 이λ₯Ό 미루닀 보면 λ‚˜μ€‘μ— ν•œ λ²ˆμ— μ—¬λŸ¬ 버전을 점프해야 ν•˜λŠ” μœ„ν—˜ν•œ 상황에 μ§λ©΄ν•©λ‹ˆλ‹€.
  • λ³€ν•˜λŠ” 도ꡬ듀: 5λ…„ μ „μ˜ ν‘œμ€€ 도ꡬ가 μ§€κΈˆμ€ λΉ„νš¨μœ¨μ μ΄κ±°λ‚˜ 지원 쀑단(Deprecated) λ˜μ—ˆμ„ 수 μžˆμŠ΅λ‹ˆλ‹€. (예: Ingressμ—μ„œ Gateway API둜의 μ „ν™˜, μ‹œν¬λ¦Ώ 관리 λ°©μ‹μ˜ λ³€ν™” λ“±) μ§€μ†μ μœΌλ‘œ μƒˆλ‘œμš΄ CNCF ν”„λ‘œμ νŠΈλ₯Ό νŠΈλž˜ν‚Ή ν•˜μ§€ μ•ŠμœΌλ©΄ λ„νƒœλ©λ‹ˆλ‹€.

:wrapped_gift: λ³΄λ„ˆμŠ€ κ΅ν›ˆ (Bonus Lessons)

:warning: λͺ¨λ“  μ›Œν¬λ‘œλ“œκ°€ μΏ λ²„λ„€ν‹°μŠ€μ— μ–΄μšΈλ¦¬λŠ” 건 μ•„λ‹™λ‹ˆλ‹€. μœ ν–‰μ΄λΌκ³  ν•΄μ„œ 개인 λΈ”λ‘œκ·Έλ‚˜ λ‹¨μˆœν•œ 배치 μž‘μ—…μ„ μΏ λ²„λ„€ν‹°μŠ€μ— μ˜¬λ¦¬μ§€ λ§ˆμ„Έμš”. λΉ„μ¦ˆλ‹ˆμŠ€ μš”κ΅¬μ‚¬ν•­μ„ λ¨Όμ € ν™•μΈν•˜κ³ , λ‹¨μˆœν•œ ν˜ΈμŠ€νŒ…μ΄λ‚˜ μ „μš© VM이 더 νš¨μœ¨μ μΈμ§€ 따져봐야 ν•©λ‹ˆλ‹€.

:shield: μ •μ±… κ°•μ œν™” (Policy Enforcement) OPA(Open Policy Agent)λ‚˜ Kyverno 같은 μ •μ±… 엔진을 μ²˜μŒλΆ€ν„° λ„μž…ν•˜μ„Έμš”. λ‚˜μ€‘μ— λ³΄μ•ˆ 정책을 μ μš©ν•˜λ €κ³  ν•˜λ©΄ 이미 배포된 μˆ˜λ§Žμ€ λΆˆμ•ˆμ •ν•œ μ›Œν¬λ‘œλ“œλ“€μ΄ μ°¨λ‹¨λ˜μ–΄ κ°œλ°œνŒ€μ˜ μ—„μ²­λ‚œ 저항에 λΆ€λ”ͺ히게 λ©λ‹ˆλ‹€.

[좜처] Top 5 hard-earned lessons from the experts on managing Kubernetes | CNCF

4 Likes