1-1. 쿠버네티스를 배우면 좋은점

황인권·2025년 2월 3일

Kubernetes

목록 보기
1/37

백엔드 개발을 잘한다는 건?

  • 가독성이 좋고 유지보수가 편한 코드를 작성하는 능력
    • Framework, Layered Architecture, Design Pattern, ORM 등
  • 안정적인 시스템을 설계하고 구축하는 능력
    • 알고리즘
    • 시스템 운영


시스템 운영을 잘하려면?

  • 고가용성내결함성을 고려하면서 앱을 개발하고, 운영할 수 있어야 한다.
  • 고가용성이란?
    • 고가용성이란 앱이 지속적으로 가동될 수 있는 속성을 말한다.
    • 가용성이란 서버가 오랜 시간 동안 끊김 없이 운영되는 것을 말한다. 따라서 고가용성 시스템이라는 것은 많은 사람들이 접속하거나 재난 등의 외부 요인이 발생하더라도 시스템이 잘 고장나지 않는다는 것을 의미한다.
  • 내결함성이란?
    • 내결함성이란 시스템의 일부가 잘못되어도 전체 시스템이 크게 영향받지 않는 속성을 말한다.
    • 우리가 배달 앱을 만들 때 메뉴 서비스, 주문 서비스, 정산 서비스 등 기능에 따라 여러 앱을 만들어 운영하게 되면 만약 정산 서비스가 고장 나더라도 메뉴 서비스와 주문 서비스는 정상적으로 동작하게 된다.

내결함성을 고려한 예시 : MSA(마이크로 서비스 아키텍쳐)

고가용성을 고려한 예시 : 클러스터링

고가용성과 내결함성을 챙기는 방법

  • 여러 서버와 서비스를 직접 관리하기 -> 관리가 너무 어렵다.
  • 서버리스 플랫폼 사용하기 -> 비용이 너무 많이 든다.
  • 쿠버네티스 같은 '컨테이너 오케스트레이션 툴' 사용하기

쿠버네티스가 나온 배경

쿠버네티스를 부르는 다른 이름

쿠버네티스를 배우면 이런걸 할 수 있다.

  • 대용량 트래픽을 수용할 수 있는 서비스를 구축하는 원리를 알게 된다.
  • 고가용성과 내결함성을 고려한 서비스를 구축할 수 있는 능력을 갖게 된다.
profile
inkwon Hwang

0개의 댓글