์ฐธ๊ณ Amazon Linux 2023 Red Hat Linux ๊ธฐ์ค.0. ์์Spring Cloud ๊ธฐ๋ฐ ํ๋ก์ ํธ์ CI/CD ํ์ดํ๋ผ์ธ์ ๊ตฌ์ถํ์๋ค. ๊ธฐ์กด CI/CD์ ๋ค๋ฅธ ์ ์ ์ฌ๋ฌ ์๋น์ค๋ฅผ ํ๊บผ๋ฒ์ ๋ฐฐํฌํด์ผ๋๋ค๋ ๊ฒ์ด์๋ค. ๋ณธ ํ๋ก์ ํธ์ ์๋น์ค๋ ์๋ ์ธ๊ฐ์ง์๋ค.- noti-service- weather-service- user-service ๋๋จธ์ง ํ๊ฒฝ์ ์ํ ์๋น์ค๋ค์ ๋ค์๊ณผ ๊ฐ์๋ค.- Eureka- api-Gateway- config-service- Kakfa & Zookeper ํด๋น ์๋ฒ๋ค ๋ชจ๋ ์ง์์ ์ธ ๋ฐฐํฌ ํ๊ฒฝ์ ๊ตฌ์ถํ๋ค. ์ฐ์ ๋ค์๊ณผ ๊ฐ์ด ์ ํ๋ค. - Eureka, config-service, kafka, zookeper ๋ค ๊ฐ์ง๋ ์๋น์ค ๋ก์ง์ด ์ ๋ณ๊ฒฝ๋์ง ์์ผ๋ฏ๋ก ์ปจํ
์ด๋ ์ต์ ํ๋ฅผ ..
DevOps
FastAPI๋ uvicornhttps://www.uvicorn.org/ ์ asgiํ๋กํ ์ฝ์ ์ด์ฉํด์ ์๋ฒ๋ฅผ ์ฃผ๋ก ์ฌ์ฉํ๋ค. ๊ทธ๋ ๋ค๋ฉด Docker๋ก ๋ฐฐํฌํ ๋, uvicorn์ ์ฌ์ฉํ๊ธฐ ์ํ Dockerfile์ ๊ตฌ์ฑ์ ๋ณด์. # python version setting FROM python:3.9 # work directory setting WORKDIR /code # requirements install COPY ./requirements.txt /code/requirements.txt # requirements install RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt # copy code COPY ./app /code/a..
์ด์ ํฌ์คํ
์์ ์ฟ ๋ฒ๋คํฐ์ค ๋ด์ ๊ฐ ํ๋๋ค์ ๋ค๋ฅธ IP์ฃผ์๋ฅผ ๊ฐ์ง๊ณ ์คํ๋๋ ๊ฒ์ ๋ณด์๋ค. ๊ฐ ํ๋๋ค์ ํต์ ์ TCP, UDP๋ฅผ ์ง์ํ๋ค. ํ์ง๋ง, ๊ฐ ํ๋๋ค์ ์๋ช
์ฃผ๊ธฐ๊ฐ ์๋ ๋ฆฌ์์ค๋ค์ด๋ค. ํ์ ์์๋ ๋ํ๋ก์ด๋จผํธ๊ฐ ํ๋๋ฅผ ๊ต์ฒดํ๊ฑฐ๋, ์ฌ์คํํ๊ฑฐ๋ ๋ฑ๋ฑ.. ํ๋๊ฐ ๊ต์ฒด๋ ๋ ๋ง๋ค IP์ฃผ์๊ฐ ๋ฐ๋์ด๋ฒ๋ฆฐ๋ค๋ ๊ฒ์ด๋ค. ๊ทธ๋ ๋ค๋ฉด ๊ฐ์ ํต์ ํด์ผํ๋ ํ๋๋ค์ ์ด๋ป๊ฒ ๋ค๋ฅธ ํ๋์ IP๋ฅผ ์ถ์ ํ ๊น? 1. Traffic Routing ์ฐ๋ฆฌ๊ฐ ํ์์ DNS์๋ฒ๋ฅผ ํตํด IP๋ฅผ ๋ฐ๋ฏ์ด, ์ฟ ๋ฒ๋คํฐ์ค ๋ด์๋ ์ ์ฉ DNS ์๋ฒ๊ฐ ์๋ค. ์ด DNS์๋ฒ๊ฐ ์๋น์ค ์ด๋ฆ๊ณผ IP ์ฃผ์๋ฅผ ๋์์์ผ ์ค๋ค. ์ฌ๊ธฐ์ ์ฌ์ฉ๋๋ ์๋น์ค ์ด๋ฆ์ ์์๋ณด๊ธฐ ์ํด, YAMLํ์ผ์ ์ดํด๋ณด๊ฒ ๋ค. - service.yaml apiVersion: v1 kind..
1. Pod ๊ฐ๋จํ ํ๋ ์คํ(YAML์์ด)์ ์๋ ๋ช
๋ น์ด๋ก ๊ฐ๋ฅํ๋ค. # ํ๋ ์คํ (์ปจํ
์ด๋ ํ๋) $ kubectl run {ํ๋์ด๋ฆ} --image={์ปจํ
์ด๋์ด๋ฏธ์ง} # ๋ชจ๋ ํ๋ ํ์ธ $ kubectl get pods # ํ๋ ์ ๋ณด ํ์ธ $ kubectl get pod {ํ๋์ด๋ฆ} # ํ๋ ์์ธ ์ ๋ณด ํ์ธ $ kubectl describe pod {ํ๋์ด๋ฆ} # ํ๋ ์ญ์ $ kubectl delete pod {ํ๋์ด๋ฆ} # ๋ชจ๋ ํ๋ ์ญ์ $ kubectl delete pods --all ์ ๋ช
๋ ์ด๋ก ํ๋๋ฅผ ์คํํ๊ณ , ์ ๋ณด๋ฅผ ํ์ธํ ์ ์๋ค. ๊ฐ ํ๋๋ค์ ํ ๋
ธ๋์ ๋ฐฐ์ ๋๋ค. ํ๋ ๋ ๊ฐ๋ฅผ ์์ฑํ๊ณ , ์๋ ๋ช
๋ น์ด๋ฅผ ์คํํด๋ณด๋ฉด ๋
ธ๋ ๋ด์ ํ๋๊ฐ ์์ฑ๋ ๊ฒ์ ๋ณผ ์ ์๋ค. $ kubectl des..
๋๋ Docker์์ ์ ๊ณตํ๋ ์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ํตํด ์ฟ ๋ฒ๋คํฐ์ค ํ๊ฒฝ์ ๊ตฌ์ถํด๋ณด๋ ค๊ณ ํ๋ค. Docker Desktop์์ ์ฟ ๋ฒ๋คํฐ์ค ์ค์น https://www.docker.com/products/docker-desktop Docker Desktop: The #1 Containerization Tool for Developers | Docker Docker Desktop is collaborative containerization software for developers. Get started and download Docker Desktop today on Mac, Windows, or Linux. www.docker.com Docker Desktop์ ์ ๋งํฌ์์ ๋ค์ด๋ฐ์ ์ ์๋ค. Docker Deskt..
1. Kubernetes 2014๋
์ ๊นํ๋ธ์ ์คํ ์์ค๋ก ์ฒ์ ๋ฐํ๋ ์ปจํ
์ด๋ ์คํ ํ๋ซํผ์ด๋ค. ์ปจํ
์ด๋ํ๋ ์ ํ๋ฆฌ์ผ์ด์
์ ์๋น์ค ์ ์ง, ์ค์ผ์ผ๋ง, ๋ณด์ ๋ฑ ์ฌ๋ฌ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค. ์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ์ฌ์ฉํ๋ ์ด์ ๋ก๋ ์ฌ๋ฌ๊ฐ์ง์ธ๋ฐ, ๊ทธ ์ค ํ๋๊ฐ ์ฟ ๋ฒ๋คํฐ์ค ๋ฐฐํฌ ํ๊ฒฝ์ ๊ตฌ์ถํ๋ค๋ฉด ์ ํ๋ฆฌ์ผ์ด์
์ ์ด๋๋ ๋ฐฐํฌ๊ฐ ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ด๋ค. 2. ๋
ธ๋ node ์ฟ ๋ฒ๋คํฐ์ค ๋ด์ ํด๋ฌ์คํฐ ๊ด๋ฆฌ์๋ ๊ฐ ์๋ฒ๋ฅผ ๊ด๋ฆฌํ๋๋ฐ, ์ด ์๋ฒ๋ฅผ ๋
ธ๋(node)๋ผ๊ณ ๋ถ๋ฅธ๋ค. ํด๋ฌ์คํฐ ๋ด์ ๋
ธ๋๋ค์ ์ถ๊ฐ, ์ ์ธ, ๋กค๋ง ์
๋ฐ์ดํธ๋ฅผ ํ์ฉํ์ฌ ์ ์ ํ ๊ตฌ์ฑํ ์ ์๋ค. ๋กค๋ง ์
๋ฐ์ดํธ Rolling Update ํด๋ฌ์คํฐ ๋ด์ ๋
ธ๋๋ฅผ ์ฐจ๋ก๋๋ก ์
๋ฐ์ดํธํ๋ ๊ธฐ์ YAMLํ์ผ์ ์ ํ๋ฆฌ์ผ์ด์
๋ค์ ์์ฑํ์ฌ ์ฟ ๋ฒ๋คํฐ์ค API์ ์ ๋ฌํ๋ฉด ์ ํ๋ฆฌ์ผ์ด์
์คํ ํ๊ฒฝ์ ๊ตฌ..