Kubernetes

· CICD
목표 ArgoCD Image Updater를 이용해서 GitOps가 아닌 RegistryOps CD를 구축합니다. Harbor(Private Registry)와 연동하여 Helm Application을 배포 해봅니다. ECR의 경우 포스팅을 잘해주셔서 아래 글을 참고하시면 될 것 같습니다 https://velog.io/@junsugi/Argo-CD-Image-Updater-사용하기-with.-AWS-EKS#결론 설치 argocd image updater를 설치합니다. kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj-labs/argocd-image-updater/stable/manifests/install.yaml # 설치 확인 ..
· CICD
ArgoCD의 클러스터 연결은 아래 2가지 방식을 지원합니다. 1. 명령어(CLI) 2. 시크릿(Declarative) ArgoCD 클러스터에 외부 EKS 클러스터를 연동하여 애플리케이션을 배포해보겠습니다. 실습에 나오는 설정 정보들은 보안을 위해서 임의로 작성하였습니다. 1. 명령어 1.1 AWS 인증 및 EKS 클러스터 추가 ArgoCD가 동작하는 쿠버네티스마스터 노드에 접속합니다 aws 명령어가 없을 시 apt-get install awscli 로 설치합니다. # aws 인증 aws configure # aws_access_key_id: aws_secret_access_key: region: ap-northeast-2 # eks 클러스터 추가 aws eks --region ap-n..
Stackable Data Platform (SDP) 란? Stackable은 쿠버네티스 환경에서 데이터 관련 애플리케이션들을 손쉽게 배포 관리해 주는 오퍼레이터입니다. https://docs.stackable.tech/home/stable/ Stackable Documentation :: Stackable Documentation Welcome to Stackable! This documentation gives you an overview of the Stackable Data Platform, how to install and manage it as well as some tutorials. Introduction The Stackable Data Platform allows you to deplo..
Kafka 및 Strimzi 소개 kafka는 대량의 데이터를 안정적이고 실시간으로 처리하는 데 사용되는 분산형 스트리밍 플랫폼입니다. 이벤트 스트림 등을 효과적으로 처리하고 , 데이터를 여러 시스템 간에 안전하게 전송할 수 있도록 지원합니다. 카프카는 주요 요소는 다음과 같다. 주키퍼 ZooKeeper : 카프카의 메타데이터 관리 및 브로커의 정상 상태 점검 health check 을 담당 카프카 Kafka 또는 카프카 클러스터 Kafka cluster : 여러 대의 브로커를 구성한 클러스터를 의미 브로커 broker : 카프카 애플리케이션이 설치된 서버 또는 노드를 말함 프로듀서 producer : 카프카로 메시지를 보내는 역할을 하는 클라이언트를 총칭 컨슈머 consumer : 카프카에서 메시지를 ..
Percona Server for MongoDB 개요 오늘 소개할 데이터베이스 오퍼레이터는 percona 사에서 만든, Percona Server for MongoDB이다. 이름이 길어 PSMDB라고 하겠다. https://docs.percona.com/percona-server-for-mongodb/6.0/comparison.html NoSQL 데이터베이스인 MongoDB 6.0을 기반으로 만들어졌으며, CE(Community Edtion) 외의 추가적인 기능들을 제공한다. Installing Percona Server for MongoDB - 링크 Percona Memory Engine - 링크 Hot Backup - 링크 Authentication - 링크 HashiCorp Vault integra..
CNPG(CloudNative PG)란? PostgreSQL Operator로 Operator Hub에서도 최고 레벨 5 AutoPilot 엄청나게 단계에 있는 완성도 있는 오픈소스이다 이름에서도 알 수 있듯이 Cloud Natvie 하게 동작하며 아래와 같은 기능들을 제공하며 운영에 필요한 대부분의 것들을 자동화하였음 Main features Direct integration with Kubernetes API server for High Availability, without requiring an external tool Self-Healing capability, through: Planned switchover of the primary instance by promoting a selected..
쿠버네티스 오퍼레이터란? ( Kubernetes Operator ) 먼저 오퍼레이터를 이해하기 위해서는 쿠버네티스의 동작흐름과 몇 가지 개념을 알 필요가 있다. 왜냐하면 오퍼레이터는 쿠버네티스가 동작 흐름을 기반으로 동작하기 때문이다. 쿠버네티스는 다음과 같은 두 가지 접근법이 존재한다. 명령형(Imperative) - shell을 통해 kubectl과 같은 커맨드라인으로 오브젝트를 핸들링하는 방식이다. 선언형(Declarative) - yaml과 같은 파일에 오브젝트를 정의하고 apply로 생성하는 방식이다. 사용자는 두 접근방식으로 명시적인 애플리케이션 상태를 설정하면 쿠버네티스의 컨트롤러들은 지속적으로(컨트롤 루프) 리소스들을 감시하고 current state(현재 상태) -> desired sta..
쿠버네티스 운영중 빈번하게 클러스터 내부 파드간의 통신이 되지 않아 장애가 나는 경우가 많았는데, 그 중에서, 호스트를 찾지 못하는 문제가 많았다.(UnknownHostException) 그래서 보통 netshoot파드를 이용하여 간단하게 ping이나 curl 명령어로 통신을 테스트하곤 했었는데 이번 포스팅에서는 dig라는 dns 유틸리티를 활용해 테스트해보며 아주 아주 조금 더 평소에 잘 모르고 넘겼던 dns관련 개념들까지 간단히 알아보자. Prerequisites더보기1. 먼저 파드 간 통신을 디버깅한다는 전제로 nicolaka/netshoot 이미지 파드 안에서 진행2. 도메인은 coredns의 서비스 디스커버리로 예시(사전지식 필요)digdig는 DNS(Domain Name System) 조회를 ..
장성필(hackjap)
'Kubernetes' 태그의 글 목록 (2 Page)