Developers Haven

(DH)블로그는 개발자들이 기술 정보를 찾아볼 수 있는 안식처가 되고 싶음을 희망하여 시작하게 되었습니다. 공부한 내용과 성장 과정을 기록해두었으니 편히 둘러보시길 바랍니다.

Welcome to DH's Blog
반응형

분류 전체보기 79

스토리지-컴퓨팅 분리 아키텍처에 대하여

기존 Hadoop 빅데이터 클러스터 아키텍처에서 스토리지-컴퓨팅 분리 아키텍처로 바뀌게 된 이유에 대해서 알아보자. 기존 Hadoop 빅데이터 클러스터 아키텍처 구조 Cnode(컴퓨팅 노드), Snode(스토리지 노드)가 하나로 구성된 구조 Hadoop의 데이터 지역성 활용 가능 → 최대한 데이터가 저장된 노드에서 데이터를 처리하게 함으로써 데이터의 이동(move)을 줄이고, 네트워크를 통해 전달하지 않게 하여 처리 성능 향상 하지만 시스템 확장에 비용이 많이 들며 비효율적이라는 문제가 존재 → Why? 컴퓨팅 파워와 스토리지 용량을 함께 늘려야하므로 스토리지-컴퓨팅 분리 아키텍처 구조 스토리지와 컴퓨팅의 독립적 확장이 가능하여 비교적 저렴 마이크로 서비스(s/w 기능을 작고 독립적으로 쪼개서 서비스를 ..

[기술공부]/Data 2024.04.18

[k8s] 쿠버네티스 오브젝트 - service(서비스)에 대하여

pod는 클러스터 내부에서만 접근이 가능하기 때문에 클러스터 외부에서 pod에 요청이 불가능하다. 또한, pod는 일회성으로 뜨고 지면서 IP가 계속 바뀌게 되고 클러스터 내/외부와의 통신을 유지하는 것이 불가능하다. 그래서 Service를 통해 클러스터 내부에서 고정 IP를 갖게 해서, pod 그룹에 대한 단일 진입점으로 외부와 통신할 수 있게 만들어준다. 쉽게 생각하면 Service는 클러스터 외부에서 트래픽이 들어오면 해당 Service와 연결된 pod에게 트래픽을 전달해주는 역할을 하는 것이다. Service에는 4가지 유형이 있으며 일반적으로는 아래와 같은 구성으로 이루어진다. Service 특징 ClusterIP 클러스터 내부에서 pod들이 다른 리소스들과 통신할 수 있는 클러스터 전용 IP ..

[k8s] 쿠버네티스 오브젝트 - pod에 대하여

k8s에서 파드(pod)는 1개 이상의 컨테이너가 캡슐화 되어 클러스터 안에서 배포되는 가장 작은 단위의 객체를 의미한다. 실제 Docker 로고는 고래 이미지를 따와서 만들어졌고, 고래의(컨테이너) 떼를 일컫는 파드(pod)라는 명칭으로 불리게 되었다. 1. pod의 기본적인 특징 하나의 pod에는 하나 이상의 컨테이너가 포함된다. (1 Pod = N Containers) pod는 워커 노드 IP와 별개로 고유 IP를 할당 받으며, pod 내의 컨테이너들은 자신이 속한 pod IP를 공유한다. 동일 pod내의 컨테이너들은 해당 pod가 가진 스토리지(volume)을 공유한다. pod는 반영속적인 속성을 가지고 있다. 2. pod의 생명주기 Pending : 클러스터 내 pod 생..

[k8s] 쿠버네티스 오브젝트란?

지금까지 쿠버네티스에 대한 개념과 전체적인 아키텍처에 대해서 알아보는 시간을 가졌다. 쿠버네티스에 대한 얘기에서 '오브젝트(object)'가 빠질 수 없는데 이번 시간에는 오브젝트가 무엇을 의미하는지에 대해서 알아보도록 하자. [지난 시간 내용 - 쿠버네티스의 아키텍처] 2024.04.13 - [[기술공부]/Kubernetes] - [k8s] 쿠버네티스란? with 쿠버네티스 아키텍처 - (1) [k8s] 쿠버네티스란? with 쿠버네티스 아키텍처 - (1) 지금까지 가상화 배포에서 컨테이너 배포로 바뀌게 된 배경과, 쿠버네티스가 등장하게 된 배경에 대해 알아보았다. 이번 시간에는 쿠버네티스의 개념과 아키텍처에 대해 알아보도록 하자. [지 developers-haven.tistory.com < k8s 오..

[k8s] 쿠버네티스란? with 쿠버네티스 아키텍처 - (2)

지난 시간에는 쿠버네티스에 대한 개념과 아키텍처에 대해 알아보았다. 쿠버네티스는 크게 마스터/워커 노드로 구성되어 있으며 지난 시간에는 마스터 노드의 구성과 역할에 대해서 알아보았다. 이번 시간에는 워커 노드에 대해서 자세히 알아보도록 하자. [지난 시간 내용] 2024.04.13 - [[기술공부]/Kubernetes] - [k8s] 쿠버네티스란? with 쿠버네티스 아키텍처 - (1) [k8s] 쿠버네티스란? with 쿠버네티스 아키텍처 - (1) 지금까지 가상화 배포에서 컨테이너 배포로 바뀌게 된 배경과, 쿠버네티스가 등장하게 된 배경에 대해 알아보았다. 이번 시간에는 쿠버네티스의 개념과 아키텍처에 대해 알아보도록 하자. [지 developers-haven.tistory.com 1. k8s(쿠버네티스..

[k8s] 쿠버네티스란? with 쿠버네티스 아키텍처 - (1)

지금까지 가상화 배포에서 컨테이너 배포로 바뀌게 된 배경과, 쿠버네티스가 등장하게 된 배경에 대해 알아보았다. 이번 시간에는 쿠버네티스의 개념과 아키텍처에 대해 알아보도록 하자. [지난 시간 내용] 2024.04.13 - [[기술공부]/Kubernetes] - [k8s] 도커와 쿠버네티스의 관계 [k8s] 도커와 쿠버네티스의 관계 지난 시간에는 가상화 배포 환경에서 컨테이너 배포 환경으로 바뀌게 된 이유와 컨테이너가 무엇인지에 대해서 알아보았다. 컨테이너 기술과 관련된 내용 중에 우리가 가장 많이 들어본 것이 developers-haven.tistory.com 1. k8s(쿠버네티스)란? k8s는 컨테이너 런타임(Container Runtime, 컨테이너 실행 엔진)을 통해 컨테이너를 다루는 도구 중 하..

[k8s] 도커와 쿠버네티스의 관계

지난 시간에는 가상화 배포 환경에서 컨테이너 배포 환경으로 바뀌게 된 이유와 컨테이너가 무엇인지에 대해서 알아보았다. 컨테이너 기술과 관련된 내용 중에 우리가 가장 많이 들어본 것이 도커(Docker)와 쿠버네티스(kubernetes, k8s)이다. 처음 공부를 하는 경우 도커랑 쿠버네티스를 많이 헷갈려하는데 이번에는 그 둘의 관계성에 대해서 자세히 알아보는 시간을 가져보도록 하자. 참고로, 쿠버네티스를 Kubernetes 혹은 k8s (k~s 중간에 8개의 글자가 있어서)라고도 부른다. [지난 시간 내용] 2024.04.13 - [[기술공부]/Kubernetes] - [k8s] 컨테이너 등장 배경 with 가상화 배포 환경 [컨테이너 기술의 배경 with Docker & k8s] 시간이 지나면서 S/W..

[k8s] 컨테이너 등장 배경 with 가상화 배포 환경

요즘 많은 기업에서 클라우드에 관심을 가지고 있고, 현재 재직중인 회사에서도 클라우드 빅데이터 플랫폼을 출시하면서 쿠버네티스 환경을 많이 사용하고 있다. 이번 기회를 통해, 쿠버네티스가 무엇이며 어떠한 구성 원리로 이루어지는지 배워보려 한다. 새로운 기술을 처음 배울 때는, 그 기술이 왜 등장했는지를 먼저 알게되면 이후의 내용을 이해하는데 도움이 된다. 그래서 이번 시간에는 본격적인 쿠버네티스에 대한 내용에 들어가기 앞서, 가상화 환경이 무엇이고? 컨테이너 환경이 도입된 이유에 대해서 알아보도록 하자. 과거에는 한 컴퓨터에 하나의 OS를 설치하고 그 위에 여러 프로그램을 실행하는 방식으로, 한 두개의 프로그램 때문에 전체 컴퓨터의 성능이 떨어지는 문제가 있었다. (어릴적 컴퓨터에 게임을 몇 개 설치했다가..

[Airflow] Connection 연결시 [Test] 버튼 비활성화된 경우 해결하는 방법

Airflow에서 Connection 연결하기 전, Connection 연결 정보가 올바르게 입력되었는지 확인하기 위해서 [Test] 버튼을 눌러 확인하고 이상이 없으면 [Save] 버튼을 눌러 커넥션을 저장하게 된다. 하지만 상황에 따라 아래와 같이 [Test] 버튼이 비활성화될 수 있는데, 이 문제를 해결하는 방법을 알아보도록하자. 여담으로 나도 처음에는 버튼이 비활성화되어 있어서, MySQL DB 연결시 커넥션 정보가 올바른지에 대해 확인이 어려웠다. 인터넷을 찾아보던 중 Airflow 내의 설정값 수정을 통해 해결할 수 있다는 것을 알아낼 수 있었다. 먼저, 해결 방법을 간단히 설명하자면 Airflow webserver 컨테이너 내에서의 airflow.cfg이란 설정 파일 내의 'test_conn..

[Airflow] docker-compose.yaml로 Jupyter 컨테이너 올리기 - (2)

지난 시간에는 docker-compose.yaml 파일을 이용하여 Jupyter 컨테이너를 올려보는 과정을 알아보았다. 이번에는 Jupyter에서 Mariadb 컨테이너 데이터를 불러오는 과정을 진행해보고자 한다. [지난 시간 내용 - Jupyter 컨테이너 올리기] 2024.01.23 - [[기술공부]/Apache Airflow] - [Airflow] docker-compose.yaml로 Jupyter 컨테이너 올리기 - (1) [Airflow] docker-compose.yaml로 Jupyter 컨테이너 올리기 - (1) 지난 시간에 Mariadb 컨테이너를 올리고 테스트 데이터를 만들어보았다. 이번 시간에는 Jupyter 컨테이너를 올리는 과정을 알아보고, 다음 시간에는 Jupyter에서 Maria..

반응형