본문 바로가기

kubernetes49

Kubernetes 구성파일 GitLab CI/CD 통한 자동화 적용(autoDeploy) GitLab을 사용하여 Kubernetes에 Manifest 파일을 자동으로 배포하는 프로세스를 설정하는 것은 다양한 방법으로 가능합니다. 여러 도구 및 접근 방식이 있지만, 가장 일반적인 방법 중 하나는 GitLab CI/CD를 사용하는 것입니다. 아래는 간단한 가이드라인입니다. GitLab Repository에 Manifest 추가 Kubernetes Manifest 파일들을 GitLab 저장소에 추가합니다. 이 Manifest 파일은 배포하려는 애플리케이션의 구성을 정의합니다. GitLab CI/CD 파일 추가 GitLab CI/CD를 사용하여 자동 배포를 설정하려면 .gitlab-ci.yml 파일을 프로젝트 루트에 추가해야 합니다. stages: - deploy deploy: stage: depl.. 2023. 12. 18.
Kubernetes 기본 구조와 etcd 역할 및 클러스터 구성 Kubernetes에서 ConfigMap과 Secret은 etcd 데이터베이스에 저장됩니다. etcd는 Kubernetes의 클러스터 상태와 구성 정보를 저장하는 분산 데이터 저장소입니다. ConfigMap은 애플리케이션 설정 정보를 저장하고, Secret은 민감한 정보(예: 암호, API 키)를 안전하게 저장하는 데 사용됩니다. Kubernetes의 마스터 노드에는 API 서버가 실행되며, 이 서버가 클러스터 상태를 etcd에 저장하고 읽습니다. 따라서 ConfigMap과 Secret은 Kubernetes 클러스터의 상태 데이터로 간주되어 etcd에 안전하게 저장되고 관리됩니다. Pod가 실행되면, 해당 Pod가 필요로 하는 ConfigMap과 Secret은 API 서버를 통해 etcd에서 가져와 Po.. 2023. 12. 17.
API Gateway(게이트웨이) Kong 아키텍처 설계 및 라우팅 환경 구성 API 게이트웨이를 활용하여 인증 및 권한 부여를 관리하는 것은 매우 일반적이며 효과적인 방법입니다. 여러 오픈소스 API 게이트웨이 도구 중에서는 Kong, Apigee, Tyk, 그리고 Nginx 기반의 API Gateway가 널리 사용되고 있습니다.여기서는 Kong을 기반으로 한 API 게이트웨이를 사용하는 방법에 대해 설명하겠습니다.Kong을 사용한 API 게이트웨이 구축Kong 설치 및 실행Kong 공식 웹사이트에서 Kong을 다운로드하고 설치합니다.Kong은 기본적으로 데이터베이스로 PostgreSQL을 사용하므로 PostgreSQL도 설치해야 합니다.Kong 설정Kong을 실행하기 전에 kong.conf 파일을 설정하여 기본 구성을 지정합니다.예를 들어, 인증 플러그인 및 데이터베이스 연결을.. 2023. 12. 16.
PostgreSQL 성능 향상 Performance Tuning & Optimization PostgreSQL의 성능을 향상시키기 위해 다양한 튜닝 옵션을 사용할 수 있습니다. 다음은 PostgreSQL을 Docker Compose로 기본으로 올린 후 성능을 향상시키기 위한 몇 가지 일반적인 조치입니다. 컨테이너 자원 할당 조정 docker-compose.yml 파일에서 PostgreSQL 컨테이너에 할당된 자원을 적절하게 조정합니다. mem_limit 및 cpus와 같은 옵션을 사용하여 메모리 및 CPU 제한을 설정할 수 있습니다. services: postgres: image: postgres:latest mem_limit: 2g cpus: 2 ... PostgreSQL 설정 튜닝 PostgreSQL 설정을 변경하여 성능을 향상시킬 수 있습니다. PostgreSQL 컨테이너 내에서 post.. 2023. 12. 15.
Kubernetes 리소스 정의하는 apply, edit, patch 다양한 해결방법 Kustomize는 Kubernetes 객체의 CLI 구성 관리자로, 레이어링을 활용하여 애플리케이션의 기본 설정을 보존합니다. 이는 원본 매니페스트를 실제로 수정하지 않고도 선언적 YAML 아티팩트를 오버레이하여 기본 설정을 덮어쓰는 방식으로 이루어집니다. Kustomize는 또한 kubectl과 통합되어 있습니다. Kustomize는 Kubernetes 리소스 및 필드를 인식하며 다른 도구들과 달리 단순한 텍스트 템플릿 솔루션이 아닙니다. Kustomize를 사용하면 하나의 기본 파일을 모든 환경 (개발, 스테이징, 프로덕션 등)에서 재사용하고 각 환경에 대한 오버레이 사양을 적용할 수 있습니다. 또한 Kustomize는 Helm 및 Argo CD와 같은 CD 솔루션과 함께 사용할 수 있습니다. Ku.. 2023. 12. 5.
728x90