본문 바로가기

전체 글30

[3장] 쿠버네티스 구축하기 클러스터 아키텍처 쿠버네티스는 여러 대의 서버가 하나의 클러스터로 연결되어 있다. 다음은 쿠버네티스의 아키텍처다. 컨트롤 플레인 컨트롤 플레인은 클러스터의 두뇌 역할을 하며 컨테이너 스케줄링, 서비스 관리, API 요청 처리등의 작업 처리를 한다. 컨트롤 플레인은 다음과 같은 컴포넌트로 구성이 된다. -컨트롤 플레인 컴포넌트- kube-apiserver 컨트롤 플레인의 프론트엔트 서버로 API 요청을 처리한다. etcd 어떤 노드가 존재하고 클러스터에 어떤 리소스가 존재하는지와 같은 쿠버네티스와 관련된 모든 정보를 저장하는 데이터 베이스다. kube-scheduler 새로 생성된 파드(pod)를 실행할 노드를 결정한다. kube-controller-manager 디플로이먼트와 같은 리소스 컨트롤러를 관리.. 2023. 6. 6.
[2장] 쿠버네티스 첫걸음 Cloud Native DevOps with Kubernetes의 책을 읽고 실습을 따라한 과정 도커 데스크톱을 활용해서 간단한 데모 애플리케이션을 빌드하고 로컬에서 실행한 뒤 이미지를 컨테이너 레지스트리에 푸시하기 도커는 쿠버네티스와 관련된 여러 기능을 제공한다. 컨테이너 이미지 포맷, 컨테이너의 수명 주기를 관리하는 컨테이너 런타임 라이브러리, 컨테이너의 패키징 및 실행에 사용하는 명령줄 도구, 컨테이너 관리용 API가 있다. 도커가 중요하긴 하나 쿠버네티스가 사용하는 많은 컴포넌트 중에 하나다. docker container run -p 9999:8888 --name hello cloudnatived/demo:hello 명령어를 이용하여 파일을 다운로드하고 localhost:9999에 띄운걸 확인할.. 2023. 6. 5.
GCP VM으로 Airflow 구축하기 이전에는 로컬에서의 Airflow를 구축했으니, 이번에는 구글 클라우드 플랫폼의 VM(가상머신)을 이용한 Airflow를 구축(?)하는 시간이다. 구글 클라욷 플랫폼에서 새로운 프로젝트를 만들어준다. Airflow를 작동시킬 메인 VM을 만들어준다.(vCPU : 2개, RAM : 8GB를 main node로) Compute engine의 VM 인스턴스에서 인스턴스 만들기를 눌러 만들어준다. (worker node는 vCPU : 2개, RAM : 4GB로 만들어준다) (리전과 영역은 만약 기존에 쓰는 다른 서비스가 있다면, 맞춰주는게 좋은것 같다) 우분투가 편해서 우분투로 설정하고, 방화벽에서 HTTP/HTTPS의 트래픽 허용을 체크한다. 이렇게 만들어주면 main-node VM 생성.. 인스턴스 생성이 .. 2023. 6. 4.
Airflow(celeryexecutor - docker-compose) 이번엔 Docker를 이용한 Celeryexecutor 배포를 구현 아나콘다를 이용했다. 우선, 도커를 설치해야한다. sudo apt-get update 위와 같은 명령어를 입력해 업그레이드 시키기 sudo apt-get docker 위 명령어를 이용해 도커를 설치해준다. sudo apt-get install \ ca-certificates \ curl \ gnupg 레포지토리 접근에 필요한 패키지들을 설치해준다. sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod a+.. 2023. 5. 13.