개요 Kubernetes는 인증(Authentication)과 인가(Authorization)를 통해 보안을 관리할 수 있다. 인증은 User에 대한 접속 허가 여부를 결정하는 방식으로 일반적인 사용자의 ID/Password 기반 로그인을 의미한다. 인가는 인증이 완료된 사용자가 특정 리소스에 접근하여 특정 액션을 수행할 수 있는지 여부를 결정하는 방식으로 로그인 후 admin 관리메뉴에 접근할 수 있도록 허가할 것인지, 특정 네임스페이스에 접근할 수 있도록 할 것인지 등의 경우를 의미한다. 본문 Kubernetes에서는 인증은 User Object에 부여되며, 인가는 User, Group, Service Account에 각각 부여할 수 있다. Kubernetes에서 의미하는 User, Group, Se..
서론 본 포스팅에서는 쿠버네티스에서 포드 기동 장애 발생 시 트러블슈팅에 활용할 수 있는 유용한 명령어에 대해 살펴본다. 쿠버네티스에서는 포드의 장애 발생 시 kubectl logs, kubectl describe 등의 명령어를 사용하여 어느 정도 수준은 분석이 1차로 가능하다. 다만 logs가 발생되지도 않으면서 describe에 표출되는 정보 역시 무관하거나, 막연한 정도의 수준으로 표출되는 경우 포드의 상태를 검증하는데 어려움이 있을 수 있다. 이때 포드 기동 문제를 검증하기 위해 아래와 같은 3가지 유용한 명령어를 활용하여 트러블슈팅을 진행할 수 있다. 본론 1) kubectl edit deployment [deployment_name] 먼저 kubectl edit를 활용하는 방법이다. 다음은 현..
서론 본 포스팅에서는 Prometheus와 Grafana를 활용하여 분산트랜잭션 환경에서 반드시 필요한 모니터링 방법에 대해 살펴보도록 하겠습니다. 특히 Kubernetes 환경에서 yaml 파일을 관리하고 배포를 관리하는 Helm Chart를 활용하여 배포하는 방법에 대해 알아보겠습니다. 본론 먼저 Helm Chart에 대해 간단히 살펴보고 설치를 진행하도록 하겠습니다. Helm Chart는 Kubernetes의 패키지 매니저 역할을 담당합니다. Chart라는 단위를 통해 Kubernetes Deployment를 관리하고 yaml파일을 등록하여 저장하는 저장소의 역할을 수행합니다. 대체로 Kubernetes를 통해 컨테이너 환경과 분산트랜잭션 환경을 구성하는데 가장 어려움을 느끼는 부분이 바로 Dock..
본 포스팅에서는 Kubernetes의 경량화 버전인 minikube에 대해 살펴보겠습니다. minikube는 로컬이나 단일 환경에 손쉽게 Kubernetes를 구성하기 위한 방식으로 아래와 같은 몇가지 스텝만으로도 쿠버네티스를 구축하고 컨테이너 환경을 사용할 수 있습니다. minikube 설치 [root@kubemaster minikube]# curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 && chmod +x minikube % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent ..
개요 본 포스팅에서는 ansible을 활용한 Kubernetes 환경에 적용할 수 있는 명령어들을 살펴보도록 하겠습니다. Ansible은 대표적인 Configuration Management System으로 수백개의 모듈과 서버를 손쉽게 관리할 수 있습니다. 특히 쿠버네티스에서는 다중화 환경을 Kubespray를 활용하여 손쉽게 설치할 수 있으며, Kubespray는 Ansible을 활용한 자동 구성환경입니다. 앞서 살펴본 ansible을 활용한 kubernetes 설치 가이드는 다음을 참고하시기 바랍니다. Kubernetes - Kuberspray로 Kubernetes 구축하기 이를 기반으로 ansible을 활용하는 방법에 대해 살펴보겠습니다. 본문 먼저 Ansible은 Playbook이라는 admin..
서론 본 포스팅에서는 Kubernetes 특정 node에 Pod를 배치하는 방법에 대해 살펴보겠습니다. Kubernetes의 구조는 크게 MaterNode / WorkerNode / InfraNode / Ingress Node 등으로 구분할 수 있습니다. - MasterNode에는 Kubernetes를 관리하는 관리노드가 설치 - InfraNode에는 각종 Echo System(Monitoring, Logging, Tracing 등)이 설치 - WorkerNode에는 실제 Application이 배포되는 노드 - IngressNode에는 Ingress Controller가 배포되는 노드 ... 위와 같은 용도로 Node를 구성하게 됩니다. 예를 들어 Nginx를 사용하는 홈페이지 환경을 Docker 이미..
서론 본 포스팅에서는 Kubernetes에서 Persistent Volume & Persistent Volume Claim을 사용하는 방법에 대해 알아보도록 하겠습니다. 먼저 Persistent Volume(이하 PV)에 대해 알아보겠습니다. PV는 Kubernetes와 같은 PaaS Platform에서 필수요소입니다. Container가 추구하는 Agility & Resilance 의 근본이 되는 것은 바로 경량화입니다. Container 내부에 대용량의 데이터를 포함할 경우 빠른 Scale-Out에 제약이 발생할 수 있으며, 이는 컨테이너가 추구하는 Agility를 위반하게 됩니다. 이와 같은 문제를 해소하기 위해 스토리지 볼륨을 마운트 하여 사용해야 하는데 이를 Kubernetes에서는 PV라고 명..
서론 본 포스팅에서는 Kubernetes Ingress에 SSL 인증서를 적용하는 방법에 대해 알아보겠습니다. 기존 3Tier legacy 환경의 경우 SSL 인증서는 WebServer에 적용하는 경우가 많았습니다. Kubernetes에서는 Ingress Controller가 이 역할을 담당합니다. Ingress는 Kubernetes의 유입점에서 Client의 요청을 받아주는 역할을 담당하기에 SSL 인증서를 이곳에 적용하게 됩니다. 지금부터 SSL/TLS에 대해 살펴보고 Kubernetes Ingress Controller에 SSL 인증서 적용 방법에 대해 살펴보도록 하겠습니다. 본문 SSL 인증서를 Kubernetes Ingress에 적용하기 전에 먼저 간단히 SSL/TLS에 대해 살펴보고 Clien..
서론 본 포스팅에서는 Kubernetes에서 Pod를 효과적으로 구성하기 위해 Flavor를 적용하는 방법에 대해 알아보겠습니다. Public Cloud에서도 당연히 중요하겠지만, Private Cloud에서 아키텍처를 설계하는데 있어 가장 중요한 요소 중 하나는 바로 전산자원에 대한 설계입니다. Private Cloud는 기존 Legacy System과 마찬가지로 제한된 자원안에서 최적의 클라우드 아키텍처를 설계해야 한다는 주요 목적이 있습니다. 본문 일반적으로 Flavor라 하면 CPU, MEMORY, DISK를 의미하며 업무 패턴과 빈도, 사용률에 따라 적절한 Resource를 Deployment에 적용하고 HPA, ReplicatSet 등에 의해 Pod의 복제수를 결정하는 등 명확한 자원 설계가 ..
서론 이번 포스팅에서는 Kubernetes에 Deployment Pod를 생성할 때 Docker Image를 Pull 해 오지 못하는 현상에 대해 알아보겠습니다. 일반적으로 해당 현상은 Docker Private Registry에 Push 된 이미지의 이름이나, Tag가 없을 경우에 발생할 수 있지만, 본 포스팅에서는 이와는 다른 한가지 현상에 대해 다루려고 합니다. 1. 문제 발생 배포하고자 하는 이미지는 httpd/2.4.41 dockerhub 이미지를 기준으로 간단히 커스터마이징한 이미지를 사용합니다. 해당 이미지를 내부에 구축해 둔 저장소에 이미지를 push하고 아래와 같이 deployment.yaml 파일을 작성합니다. apiVersion: apps/v1 kind: Deployment metad..
- Total
- Today
- Yesterday
- Architecture
- SWA
- apache
- 마이크로서비스
- webtob
- git
- nodejs
- aws
- wildfly
- Da
- 마이크로서비스 아키텍처
- node.js
- TA
- OpenStack
- aa
- kubernetes
- JEUS6
- openstack tenant
- MSA
- k8s
- 쿠버네티스
- jeus
- API Gateway
- openstack token issue
- JBoss
- 오픈스택
- 아키텍처
- JEUS7
- SA
- Docker
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |