개념 7

Airflow Helm 배포 - Helm 과 Chart 를 알아보기

공부를 통해 배운 내용을 작성하고 있습니다. 혹여 해당 포스팅에서 잘못된 부분이 있을 경우, 알려주시면 빠르게 수정 조치하도록 하겠습니다. Kubernetes 환경에서 Airflow를 운영할 때, 일반적으로 Helm 차트를 이용하여 배포 및 운영을 한다. 이유는, Airflow 에서 제공하는 공식 Helm 차트를 제공하기 때문이며, 이를 통해 특정 클라우드 제공 업체에 얽매이지 않고 Airflow를 운영할 수 있다. Helm 의 장점 Helm 을 사용하면, 복잡한 쿠버네티스 기반의 애플리케이션을 쉽게 설치 가능하다. 설치뿐만 아니라, 업데이트도 간결하다. helm 차트로 하나로 묶여 있다 보니, 여러 리소스가 묶인 복잡한 소프트웨어를 동시에 관리하기 수월하여 관리가 쉽다. Helm의 단점 하지만 Helm..

URL과 리소스

URI는Uniform Resource Identifier의 약자로, 위치 & 이름 또는 둘 다 추가로 분류될 수 있다. 여기서, 위치(Locator)가 URL, 이름(Name)이 URN이다. 오늘은 이 중에서도, 전 세계적으로 통용되는 URL에 대해 포스팅해 볼 것이다. 목차 URL의 개념 URL의 구성 단축 URL URL의 인코딩 01. URL의 개념 URL은 Uniform Resource Locator의 약자로, 인터넷의 리소스를 가리키는 표준 이름을 말한다. 즉, 원하는 리소스가 어디에 위치하고 어떻게 가져오는지에 대해 정의해주는 기능을 갖고 있다. URL은 우리가 원하는 정보를 가리키고, 그것이 어디에 있으며 어떻게 접근하면 될 지 알려주는 기능을 갖고 있다. URL이 없었을 땐, 상대방과의 파일..

쿠버네티스란? 주요 개념 익혀보기 - 레플리카셋, 디플로이먼트, 서비스

목차 쿠버네티스 구성요소 - 레플리카셋 쿠버네티스 구성요소 - 디플로이먼트 쿠버네티스 구성요소 - 서비스 01. 쿠버네티스 구성요소 - 레플리카셋(ReplicaSet) 앞선 글에서 파드(pod)에 대해서 포스팅을 했었다. (이전 글 참고) 쿠버네티스란? - 노드와 파드, 컨테이너 차이를 이해해보자 목차 쿠버네티스란 쿠버네티스 구성요소 - 노드 쿠버네티스 구성요소 - 파드 01. 쿠버네티스란 도커를 어느 정도 공부하다 보면, 쿠버 네티스에 대해서 많이 들어봤을 것이다. 쿠버네티스는 컨테 eng-sohee.tistory.com 여기서, 레플리카셋은 파드의 수를 보장하기 위한 개념이다. 즉, 레플리카 세트를 3으로 설정했다고 가정할 때, 파드가 삭제되거나 (어떠한 이슈에 의해) 다운돼도, 쿠버네티스가 알아서 ..

쿠버네티스란? - 노드와 파드, 컨테이너 차이를 이해해보자

목차 쿠버네티스란 쿠버네티스 구성요소 - 노드 쿠버네티스 구성요소 - 파드 01. 쿠버네티스란 도커를 어느 정도 공부하다 보면, 쿠버 네티스에 대해서 많이 들어봤을 것이다. 쿠버네티스는 컨테이너 개발에 있어, 컨테이너화된 애플리케이션을 탄력적으로 실행하기 위한 프레임 워크를 말한다. 이는 컨테이너화된 애플리케이션의 로드밸런싱 & 시크릿 관리 등을 원활히 하도록 돕는다. 로드 밸런싱(load balancing): 컴퓨터 네트워크 기술의 일종으로 둘 혹은 셋 이상의 중앙처리장치 혹은 저장장치와 같은 컴퓨터 자원들에게 작업을 나누는 것을 뜻함 (동의어: 부하분산) 이는 배포를 원활히 돕는 것뿐만 아니라, 혹여 배포가 잘못되었을 경우 유연한 대처(롤백 등)가 가능하도록 돕는다. 예를 들어, 쿠버네티스를 이용하면..

07. [쉽배운 3장] 프로세스와 스레드

목차 프로세스란? 프로그램과 프로세스 프로세스의 상태 프로세스 제어 블록(PDB) 스레드 01. 프로세스란? 프로그램이 메모리 상태에 올라가 동적인 상태인 것이 프로세스다. 1-1. 프로세스 구조 코드영역, 데이터영역, 스택영역으로 분리된다. 코드영역 프로그램 본문 기술. 요리책과 같음. 데이터영역 사용해야 하는 데이터. 요리의 재료와 같음. 스택영역 프로세스를 운영할 때 필요한 데이터. 조리도구와 같음. 예를 들면, 프로세스에서 함수 실행시키면 함수 실행 후 다시 돌아 올 위치 등을 저장함. 이는 사용자에게 보이지 않음. 1-2. 시분할 방식 시분할 방식이란, CPU가 시간을 쪼개 프로세스에게 각각 할당하여 프로세스를 처리할 수 있는 방법이다. 이는 CPU의 효율을 높이기 위한 방법 중 하나다. 음식점..

09. 스택/큐 알고리즘 개념

01. 스택(Stack), 큐(Queue) 개념 1-1.스택(stack)이란 자료의 입력과 출력을 한 방향으로 제한한 자료구조를 의미한다. 즉, LIFO(Last In First Out)구조다. 스택의 예시 쌓여있는 접시에서는 맨 위에것부터 쓸 것이다. 새걸넣어도 맨위이다. 접시가 쌓인 모습을 상상하자! 1-2-1. 스택 풀이 방법 스택 자료형은 없다. deque를 이용해 스택을 쓴다는 점을 알고 있으면 좋다. 🔥 덱(deque)이란? 양방향 큐이다. 즉, 맨 앞과 뒤에 데이터를 삽입하고 삭제할 수 있게 해주는 자료형이다. 양 끝 엘리먼트에 대한 append, pop이 빠르다는 장점이 있어 많이들 사용한다. 삽입 제거 시, 일반적인 리스트는 연산에 O(n)인 데에 반해, 데크는 O(1)로 성능이 매우 빠..

Airflow 개념 + Docker를 통한 Airflow 설치

01. Airflow란 무엇인가? Airflow는 에어비앤비에서 개발한 워크플로우 스케줄링 및 모니터링 플랫폼이다. 이는 동작 순서 및 방식과 같은 파이프라인을 파이썬 코드를 이용해 구성하기 때문에 동적인 구성이 가능하다. 또한 분산구조와 메시 지큐를 이용해 많은 수의 워커 간 협업을 지원하고 스케일 아웃이 가능하다. 1-1. Ariflow의 아키텍처 스케줄러 - 브로커 & 메타 DB - 여러 개의 워커 1. 스케줄러: 실행 주기가 되면 작업을 생성하고, 의존 작업이 모두 성공하면 브로커에게 넘긴다. 2. 브로커: 실행 가능한 작업(워커)들이 들어가 있는 공간 3. 워커: 실제 작업을 진행하는 주체 4. DAG, Task 등이 정의되어 있다. 1-2. Airflow를 왜 사용해야 하는가? 이는 ※전일 회..