방법 38

MySQL Role 권한 설정

MySQL 8 버전에서 지원하는 role 기능에 대해서 소개해보고자 한다. 1. MySQL Role 이란? 2. MySQL Role 기본 쿼리 3. 조건 별 Role 권한 할당 1. MySQL Role 이란? 말 그대로 역할을 의미한다. 더 풀어서 설명하자면, 권한을 모아 둔 역할이다. 마치 '학생은 다른 학생들의 개인 정보를 볼 수 없다.', '선생님은 본인 반에 한하여 학생 정보를 볼 수 있다.'와 같이, 각자의 role에 맞는 역할이 있는 것과 같다. 이를 통해 집합에 대한 권한을 한번에 설정 및 관리할 수 있으므로, 사용자에 대한 권한 관리 및 운영이 더욱 수월해지게 된다는 장점이 있다. 1-1. Role 생성 순서 및 구조 즉, role 을 생성하고 & role에 권한을 할당하고 & 이로써 특정..

Airflow Helm 배포 - 설치하기

공부를 통해 배운 내용을 작성하고 있습니다. 혹여 해당 포스팅에서 잘못된 부분이 있을 경우, 알려주시면 빠르게 수정 조치하도록 하겠습니다. 이전 포스팅을 통해 Helm 에 대해서 알아보았다면, 이제 직접 실습을 해 보겠다. (이전 포스팅 링크: https://eng-sohee.tistory.com/161) Airflow Helm 배포 - Helm 과 Chart 를 알아보기 Kubernetes 환경에서 Airflow를 운영할 때, 일반적으로 Helm 차트를 이용하여 배포 및 운영을 한다. 이유는, Airflow 에서 제공하는 공식 Helm 차트를 제공하기 때문이며, 이를 통해 특정 클라우드 제공 업 eng-sohee.tistory.com 목차 1. Helm 설치 2. Helm 레포지토리 추가 3. valu..

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

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

Docker airflow2 커스텀 이미지 빌드 과정

앞서, 기존에 생성된 이미지만을 이용해서 airflow 를 빌드했었는데, 오늘은 airflow 이미지 자체를 직접 빌드해보도록 하겠다. 왜 직접 빌드해야 하는지에 대한 이유와 공식 문서 소개, 그리고 airflow2 image 빌드 과정을 포스팅하겠다. 목차 airflow2 커스텀 이미지 빌드의 필요성 airflow2 이미지 빌드 공식 문서 01. airflow2 커스텀 이미지 빌드의 필요성 여담이지만 회사 면접을 봤을 당시, airflow를 도커로 띄워서 작은 프로젝트를 운영해 본 경험이 있다고 말씀드렸다. 이때 사수님께서 이미지 빌드 과정에 대해서 상세히 여쭤보았던 기억이 나는데, 이때 나는 이미 빌드되어져 있는 이미지를 활용해서 운영했었다라고 대답했던 기억이 난다. 그래서, 기회가 된다면 이미지부터..

Kafka Consumer 애플리케이션 개발 - Python (Local Server 기반)

해당 프로젝트는 로컬 서버를 기반으로 카프카 프로듀서 애플리케이션을 개발하는 프로젝트에 대한 포스팅이다. 컨플루언트 기반 클러스터에서 카프카를 실행하기 전, 카프카의 동작 원리를 이해하기 위해 로컬에 직접 설치 및 실행해보았다. 목차 Python Consumer 개발 01. Python Consumer 개발 1-1. 개요 앞선 포스팅에서, 카프카를 로컬에 설치하는 방법 그리고 해당 로컬에서 카프카, 주키퍼 서버를 띄우는 방법에 대해 알아보았다. 그리고 kafka-python을 이용해 카프카 프로듀서를 띄워보았다. 이전 포스팅 링크 https://eng-sohee.tistory.com/136 Local Server 기반, Kafka Producer 애플리케이션 개발 - Python 해당 프로젝트는 로컬 서..

Kafka Producer 애플리케이션 개발 - Python (Local Server 기반)

해당 프로젝트는 로컬 서버를 기반으로 카프카 프로듀서 애플리케이션을 개발하는 프로젝트에 대한 포스팅이다. 컨플루언트 기반 클러스터에서 카프카를 실행하기 전, 카프카의 동작 원리를 이해하기 위해 로컬에 직접 설치 및 실행해보았다. 목차 카프카 로컬 설치 서버 실행 Python Producer 개발 01. 카프카 로컬 설치 카프카 설치를 위해서는 공식 사이트를 이용해 파일을 다운로드 받아야 한다. 아래 공식다운로드 홈페이지 링크를 통해 접속하여, 파일을 다운받는다. 난 여기서 kafka_2.13-3.0.0 버전을 다운받았고, 해당 압축을 풀어주었다. https://kafka.apache.org/downloads Apache Kafka Apache Kafka: A Distributed Streaming Pla..

쿠버네티스 - 디플로이먼트의 배포 방식 :: 리크리에이트, 블루그린, 카나리

목차 배포 방식 - 리크리에이트 배포 방식 - 블루/그린 배포 방식 - 카나리 오늘은 롤링업데이트 방식 설명에 이어, 나머지 배포 방식 3가지를 간단히 소개해보는 포스팅을 작성해보도록 하겠다. 01. 배포 방식 - 리크리에이트 리크리에이트 배포 방식은 말그대로 re-create 하는 것이다. 즉, 업데이트 시 모든 서버를 중지하고 새로운 버전으로 배포한 뒤 다시 서비스를 올리는 방식이다. 이는 자원을 추가적으로 사용하지 않는다는 점에서 장점이 있지만, 다운타임이 발생한다는 치명적 단점이 있기 때문에 일반적으로 사용하지는 않는다. 장점: 자원을 추가적으로 사용하지 않음 단점: 다운타임이 발생 02. 배포 방식 - 블루/그린 블루그린 방식에서, 블루는 구 버전 & 그린은 신 버전을 의미한다. 블루 '앤' 그..

카테고리 없음 2022.03.27

쿠버네티스 - 디플로이먼트의 배포 방식 :: 롤링 업데이트

목차 배포 방식 - 롤링업데이트 디플로이먼트는 애플리케이션을 배포하고 업데이트를 수행하는 리소스다. 이를 통해 배포하는 방식은 크게 네 가지로 분류되며, 방법마다 장단점이 존재한다. 따라서 서비스에 적합한 배포 방식을 채택해야 한다. 오늘은 가장 기본적이자 대표적으로 쓰이는 롤링업데이트 방식에 대해서 포스팅을 할 예정이다. 01. 배포 방식 - 롤링업데이트 앞선 글에서, 디플로이먼트의 개념 및 이점을 포스팅했었다. (이전 게시물) 쿠버네티스란? 주요 개념 익혀보기 - 레플리카셋, 디플로이먼트, 서비스 목차 쿠버네티스 구성요소 - 레플리카셋 쿠버네티스 구성요소 - 디플로이먼트 쿠버네티스 구성요소 - 서비스 01. 쿠버네티스 구성요소 - 레플리카셋(ReplicaSet) 앞선 글에서 파드(pod)에 대해서 포..

깃(Git) 개념 및 핵심 명령어 총 정리 (1)

01. Git이란? 코드의 버전 관리 시스템 중 하나 코드를 짤 때는, 여러 명이 협업해서 하나의 버전을 생성되기 때문에, 되돌리는 과정 등이 부가적으로 필요하다. 또한 중간마다 변화사항이 생길 때마다 백업도 필요한데, 유의미한 변화를 중심으로 효율적 백업이 필요하다. 이런 버전 관리작업을 돕는 도구 중 하나가 바로 Git 이다! 02. Github란? 각자의 컴퓨터에만 존재하는 버전(local에서 만들어준 버전)을 저장/관리해주는 서비스 우리가 만약 원격 저장소에 저장을 한다면, 레포지토리에 저장된 모든 버전들을 저장할 수 있다. 03. Git 버전에 대하여 3-1. Git 내에서 버전이 생성되는 단계 Git은 세 개의 공간이 존재한다. 1. working directory (작업공간) : 내가 코드 ..

신입 데이터 엔지니어, 합격을 하기까지의 여정

안녕하세요 한소희입니다. 저는 입사를 앞둔 신입 데이터 엔지니어가 됐습니다. 데이터 엔지니어를 준비하게 된 계기 및 과정, 취업 과정까지 겪었던 기나긴 여정을 스스로 회고하고자 포스팅해보려 합니다. 목차 어쩌다가 '데이터 엔지니어'라는 꿈이 생겼나 데이터 엔지니어를 준비하던 과정 이력서 그리고 면접 합격과 다짐 01. 어쩌다가 '데이터 엔지니어'라는 꿈이 생겼나 1-1. 대학교 2학년, SCM에서 데이터를 발견하다. 나는 산업경영공학과 출신이다. 1학년 때 배웠던 산업공학개론을 듣고, 물류유통에 흥미가 생겼다. 따라서 물류유통 관련 외부 대외활동들을 하며 인사이트를 키웠다. 나는, 이 과정 속에서 큰 기업의 성공 전략이 모두 데이터에 귀결됨을 깨달았다. 한국청년물류포럼 활동 중 세미나에서 내가 발표했던 ..