본문 바로가기

전체 글291

5주차 - 백업 (AWS S3) & PITR 복원(도전과제) 1. AWS CLI를 설치합니다. # Install aws cli v2 curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" apt install unzip -y && unzip awscliv2.zip sudo ./aws/install complete -C '/usr/local/bin/aws_completer' aws # 이후 aws configure 작업 실시 aws configure 2. 백업할 S3 버킷 생성 # S3 버킷 생성 aws s3 mb s3://버킷(유일한 이름) --region ap-northeast-2 3. S3 버킷에 대해 Secret으로 유저정보를 저장 # My BUCKET Name 변수 .. 2022. 6. 25.
5주차 - Cloud Native PostgreSQL 오퍼레이터 1. PostgreSQL의 개요 (블로그) - 오픈소스 RDBMS로 무료 라이센스를 사용하며, 오래된 오픈소스의 안정성 등의 다양한 특징을 담고 있다. 2. CloudNativePG(CNPG) 소개 - 쿠버네티스 환경에서 PostgreSQL 워크로드를 관리해주는 오퍼레이터 2.1 구조와 아키텍처 - 비동기 혹은 동기 스트리밍 복제 구성의 클러스터 지원 - 하나의 Primary 노드와, 다수의 standby replicas로 동작합니다. - RW : 요청 작업을 Primary에서만 처리합니다. - RO : standby replicas와만 소통합니다. - R : Read-Only작업을 모든 노드와 소통하며 처리합니다. 3. CNPG 배포 helm을 통해서 cnpg 오퍼레이터를 설치할 수 있습니다. # Po.. 2022. 6. 25.
4주차 - Percona Distribution for MongoDB 오퍼레이터 1. MongoDB 개요 - 대표적인 NoSQL 데이터 베이스 - document 지향 DB로 key:value값으로 저장이 가능하며, 손쉬운 확장이 가능함. - Percona 오퍼레이터를 통해서 MongoDB 클러스터를 관리할 수 있다. 2. Percona 오퍼레이터 설치 (공식문서) 2.1 percona-server-mongodb-operator 파일을 가져옵니다. git clone -b v1.12.0 https://github.com/percona/percona-server-mongodb-operator cd percona-server-mongodb-operator 2.2 먼저 crd를 배포합니다. kubectl apply --server-side -f deploy/crd.yaml 2.3 names.. 2022. 6. 25.
3주차 - Kafka & Strimzi 오퍼레이터 1. 카프카 소개 비동기 방식의 스트리밍 플랫폼이다. 분산 데이터 스트리밍 플랫폼 1.1 특징 - 높은 처리량 : 묶음 단위 배치 처리로 대용량 실시간 로그 데이터 처리에 적합 - 높은 확장성 : 브로커을 통해 scale in/out이 편리 - 높은 영속성 : 데이터를 캐싱 메모리를 통해 일시적으로 저장하고 빠르게 불러올 수 있음 - 높은 가용성 : 데이터 복제를 통해 장애 상황에 대비 1.2 기본 용어정리 - Producer : 데이터 제공자. 데이터(메시지, 이벤트)를 생성하여 카프카로 전달함. - Consumer : 데이터 소비자. 카프카로 부터 데이터를 받아 필요한 상태로 가공하여 사용함. - Brokers : Kafka 클러스터를 이루는 구성 단위이며, 쿠버네티스의 워커노드와 비슷한 느낌이다. .. 2022. 6. 25.
2주차 - 오퍼레이터 & MySQL 오퍼레이터 (설치 및 장애테스트) 1. Helm을 통해서 mysql 오퍼레이터를 설치 helm repo add mysql-operator https://mysql.github.io/mysql-operator/ helm repo update helm install mysql-operator mysql-operator/mysql-operator --namespace mysql-operator --create-namespace 2. MySQL 오퍼레이터 CRD 확인 kubectl get crd | grep mysql kubectl get deploy,pod -n mysql-operator 3. MySQL InnoDB 클러스터 설치 helm install mycluster mysql-operator/mysql-innodbcluster \ --s.. 2022. 6. 25.
2주차 - 오퍼레이터 & MySQL 오퍼레이터 1. 쿠버네티스 오퍼레이터 - 오퍼레이터는 쿠버네티스 추상화를 통해 관리 대상 소프트웨어의 전체 라이프사이클을 자동화, 애플리케이션을 패키징-배포-관리하는 툴입니다. (공식문서) - CRD(Custom REsource Definition) : 오퍼레이터로 사용할 상태 관리용 객체 Spec 정의 - CR(Custom Resource) : CRD의 spec을 지키는 객체들의 실제 상태 데이터 조합 - CC(Custom Controller) : CR에 규정된 상태를 유지하기 위한 컨트롤 루프 2. DB 기본지식 2.1. DB에서의 Transaction이란? - (일반적 정의) 쪼갤 수 없는 업무 처리의 최소 단위 - (DB적 정의) 데이터베이스의 상태를 변화시키기 해서 수행하는 작업의 단위 - (또 다른 정의.. 2022. 6. 24.