Don't think! Just do it!

종합 IT 기술 정체성 카오스 블로그! 이... 이곳은 어디지?

Server services/kubernetes

[kubernetes] MSA와 쿠버네티스는 한몸!

방피터 2023. 11. 30. 23:10

이전글

2023.06.13 - [Server services/MSA 설계] - MSA 설계

 

MSA 설계

거창하게 MSA 설계 라고 적어놨지만 난 MSA 실무에 투입되어 본 적도 없고 컴공 출신도 아니야 ㅋ 그런데 하게 되었으니 해야지 ㅋ 쫄지만 마 ㅋㅋㅋ Micro Service Architecture 라더라 처음 들어봄 ㅋ

engschool.tistory.com

2023.08.02 - [Server services/kubernetes] - [Kubernetes] 네이버 클라우드에다가 시작!

 

[Kubernetes] 네이버 클라우드에다가 시작!

도커를 하다보니 도커 컴포즈가 튀어나오고 도커 컴포즈를 하다보니 결국은 쿠버네티스까지 오는구만.. 오늘은 kubernetes에다가 msa 구축, 내일은 회로 그리고 PCB 아트웍을 할건데.. 🤪🤪🤪 이건

engschool.tistory.com

 

처음에는 위에 쓴 글처럼 대애애강

MSA랑 쿠버네티스를 나눠서 시작했는데 음~~

진행이 따로 되질 안더라고 ㅋ

MSA 구성하기에

쿠버네티스처럼 좋은 환경이 없기도 하고 ㅋ

그래서 MSA를 설계하면서 kubernetes를 동시에 공부하게 되었어 ㅋ

이해하려고 막 그림도 그리고 말이지 ㅋㅋ

👇👇👇

쿠버네티스를 나름 이해해보자

 

아마도!

쿠버네티스가 MSA을 구축하려고 만들어진 것일지도 몰라!

그래서 당연히 쿠버네티스가 많이 사용될 거고

그래서 어느 정도 고정된 틀이 있는 것도 사실이야.

 

실제 비싼 MSA로 컨설팅을 받아보면

꼭 쿠버네티스 구성도를 보여주는데

다 거기서 거기더라구 ㅋ

 

그런데 그걸 그대로 다 사용할 수 있느냐?

절대 아님!!

구축하려는 시스템마다 다르고

사용하려는 백엔드 기술 스택에 따라서도 달라지지

또 컨설팅을 받는다고 해서 구축을 도와주는 것도 아니고 ㅋ

결국은 다~~ 알아서 해야한다는 사실!

그래서 나도 맨땅에 헤딩해가면서 구축했어.

👇👇👇

쿠버네티스 위에 MSA!

 

보기에는 간단해 보이는데 ㅋ

하나하나 붙일 때마다 봐야할 문서가 산더미야 ㅋㅋㅋ

이거 구축하다가 진짜 번아웃 옴!

 

MSA를 위한 kubernetes를 구성은 사실 몇 가지 없어.

기본 kubernetes 환경,

API gateway,

Monitoring 시스템,

CI/CD 시스템,

NAS,

domain 및 SSL, 로드 밸런서 같은 네트워크 설정,

데이터 베이스,

loging 시스템,

Data pipeline,

캐시 서버

... 많네? ㅋㅋㅋㅋㅋㅋㅋ

이 정도가 구성되고 나면

마이크로 서비스들을 구현해서 하나씩 쿠버네티스에 올리는 거지.

그런데 이 중에 기본 kubernetes 환경을 포함 Monitoring, NAS, 데이터 베이스 그리고 로드 밸런서같은 것들은

클라우드 서비스에서 메뉴얼을 잘 제공하고 있어서 메뉴얼만 잘 읽으면 어렵지 않게 구성할 수 있어.

적어도 네이버 클라우드 환경에서는 괜찮았음!

 

그리고 남은 것들도 사실 제품은 골라서 설치하는게 거의 대부분이야.

물론 설정/설치가 지옥이지만 ㅋㅋㅋ

 

그 중에 한 가지만 이야기 해주자면

시중에 사용되는 API gateway는 몇가지 선택지가 없어.

Kong, KrakenD, tyk 등이 많이 언급되더라구

그래서 처음에는 가장 유명해보이는 kong을 고려했어.

그런데.... openid connect가 유료야..

OpenID Connect가 유료다..

 

아니 씨발 치사하게 이걸 유료로 박아놔?

이걸 유료로 박아놓으면... 우린 AWS cognito 쓸건데!!

OIDC 써야 하는데~~~~~

🤬🤬🤬🤬🤬🤬

 

이렇게 맘 상할때는 베타 근성이지 ㅋㅋㅋ

 

그래서 전혀 안유명하고 오픈소스인 

APISIX로 선택했어.

APISIX

 

유료 옵션이 아예 없어 ㅋㅋ

게다가 잘 동작하지.

(중국 향기가 좀 나긴 함..)

 

암튼 이런식으로 개발하려는 시스템 컨셉에 맞는 제품을 선정했으면

메뉴얼보고 설치/사용하면 되겠지 ㅋ

말은 이렇게 쉽게 했지만... 설정이 참...

쿠버네티스는 yaml 지옥이여~

 

야근이 좀 잦아들면 내가 담당했던 구성을 조금씩 올려볼게~

yaml도 같이!

안녕!

 

반응형