* AWS Single Sign-On (SSO) 란? AWS Signle Sign-On은 AWS 계정 및 비즈니스 애플리케이션에 대한 SSO 엑세스 관리를 간소화하는 클라우드 기반 서비스입니다. AWS Organization의 모든 AWS 계정에 대해 SSO 엑세스 및 사용자 권한을 제어할 수 있습니다. * SSO를 사용하게 된 이유? 저는 AWS 파트너사 엔지니어로서 고객들의 MSP 업무를 담당하고 있습니다. 적게는 20개 ~ 많게는 50개의 고객사를 관리하는데 중앙에서 통합 관리를 할 수 있는 방안을 생각하다가 SSO를 도입하게 되었습니다. - 신규 고객사를 AWS Organization에 추가 등록 할때마다 각 계정에서 엔지니어/빌링/고객 의 IAM 사용자 및 Role을 매번 생성 - 각 계정의 I..
이번 글에서는 쿠버네티스를 설치하기 전에 간략하게 CNI(Container Network Interface)에 대하여 알아보겠습니다. 무작정 문서대로 설치만 하기 보다는 내가 설치하는 애가 무엇인지 알고 가는게 좋을거 같아 글을 쓰게 됐습니다. CNI 란? CNCF(Cloud Native Computing Foundation)의 프로젝트 중 하나인 CNI는 컨테이너 간의 네트워킹을 제어할 수 있는 플러그인을 만들기 위한 표준입니다. 다양한 형태의 컨테이너 런타임과 오케스트레이터 사이의 네트워크 계층을 구현하는 방식이 다양하게 분리되어 각자만의 방식으로 발전하게 되는 것을 방지하고 공통된 인터페이스를 제공하기 만들어 졌습니다. 쿠버네티스에서는 Pod 간의 통신을 위해서 CNI 를 사용합니다. 쿠버네티스 뿐..
이번 글에서는 쿠버네티스를 설치하기 전에 다양한 쿠버네티스 설치 방법에 대해 알아보려고 합니다. 쿠버네티스는 용도에 따라서 아래와 같이 설치 툴의 종류가 달라집니다. 개발 용도의 쿠버네티스 설치 Minikube Docker for Mac / Windows에 내장된 쿠버네티스 서비스 테스트 또는 운영 용도의 쿠버네티스 설치 kops kubespray kubeadm EKS, GKE, AKS 등의 관리형 서비스 * Minikube Minikube는 가벼운 쿠버네티스 구현체이며, 로컬 머신에 VM을 만들고 하나의 노드로 구성된 간단한 클러스터를 생성한다. Minikube는 리눅스, 맥, 그리고 윈도우 시스템에서 구동이 가능하다. Minikube CLI는 클러스터에 대해 시작, 중지, 상태 조회 및 삭제 등의 기..
쿠버네티스는 요즘 표준으로 사용되고 있는 컨테이너 오케스트레이션 도구입니다. 1.1 여기서 오케스트레이션이 무엇이냐.. 위 그림을 보시면 수많은 악기를 다루는 연주자 분들이 계십니다. 그림의 계단을 기준으로 앞(Front) 쪽에는 현악기, 뒤(Back) 쪽에는 주로 관악기/타악기들이 배치되어 있으며 그중, 가운데에는 이 모든 연주자들을 제어(Control)하는 지휘자가 있습니다. 이러한 악기들의 자리 배치는 누가 한 것일까요..? 바로 지휘자가 이 음악에 가장 잘 어울리는 악기들의 갯수, 배치, 구조 등을 고려하여 최적의 연주를 지휘하는 것입니다. 이것을 바로 오케스트레이션이라 합니다. 1.2 그럼 컨테이너 오케스트레이션이 무엇이냐.. 컨테이너 오케스트레이션은 말 그대로 컨테이너라는 악기를 가장 효율적이..
안녕하세요~ CKA 취득후기를 남기기전에 먼저, 간략하게 제 소개를 조금 해보려고 합니다. 총 3년 경력중에 2년동안은 주로 Cisco UCS Server, Hyperflex(HCI), VMware vSphere, NSX 제품군들을 다루다가 이번년도 부터는 AWS 업무를 하고 있습니다. 제가 다니는 회사는 Cisco, VMware, AWS 파트너로서 매년 파트너 등급 갱신 및 승급을 위해 파트너사 직원들이 어느정도의 역량을 갖고 있는지를 증명하기 위함으로 자격증을 취득합니다. 원래 K8S에 관심도 많았고 AWS를 하면서 EKS를 사용할 일이 많아지고 고객의 니즈가 확대되면서 CKA 자격증에도 저절로 눈이 갔습니다. 마침 VMware 쪽에서 파트너들에게 CKA 자격증을 요구하면서 이번년도에 시험을 위해 더..
Git 이란? - 컴퓨터 파일의 변경사항을 추적하고 여러 명의 사용자들 간에 해당 파일들의 작업을 조율하기 위한 분산 버전 관리 시스템이다. - 소프트웨어 개발에서 소스 코드를 효과적으로 관리할 수 있도록 하는 오픈소스 소프트웨어다. - 프로젝트 폴더 내에서 작업을 기록하고, 버전관리를 통해 체계적인 개발이 가능하도록 한다. Git의 장점은 소스코드를 따로 주고 받을 필요 없이, Git을 사용하면 하나의 프로젝트, 같은 파일을 여러 사람이 동시에 작업하는 병렬 개발이 가능하다. GitHub 란? Github는 분산 버전 관리 툴인 Git을 사용하며 버전 관리와 협업을 위한 코드 호스팅 플랫폼으로 언제, 어디서나 협업 프로젝트를 쉽게 진행할 수 있도록 돕는역할을 수행한다. GitHub 사이트 가입 및..
- 컨테이너 내부에서 어떤 일이 일어나는지 아는 것은 디버깅뿐만 아니라 운영 측면에서도 중요합니다. - 애플리케이션 레벨에서 로그가 기록되도록 개발해 별도의 로깅 서비스를 쓸 수도 있지만 도커 컨테이너의 표준 출력(StdOut)과 에러(StdErr) 로그를 별도의 메타데이터 파일로 저장하며 확인하는 명령어를 제공합니다. [mysql 5.7이 설치된 컨테이너 생성 및 로그 남기기] # docker run -d --name mysql \ -e MYSQL_ROOT_PASSWORD=1234 \ mysql:5.7 - mysql과 같은 애플리케이션을 구동하는 컨테이너는 포그라운드 모드로 실행되므로 -d 옵션을 써서 백그라운드 모드로 컨테이너를 생성하는 경우가 많습니다. - 애플리케이션이 잘 구동되는지 여부를 알 수..
도커 네트워크 구조 - 도커는 컨테이너에 내부 IP를 순차적으로 할당 - 내부 IP는 컨테이너를 재시작할 때마다 변경될 수 있음 - 내부 IP는 도커가 설치된 호스트, 즉 내부망에서만 쓸 수 있는 IP이므로 외부와 연결될 필요가 있음 - 컨테이너를 시작할 때마다 호스트에 veth(Virtual Ethernet) 라는 네트워크 인터페이스를 생성 - 도커는 각 컨테이너에 외부와의 네트워크를 제공하기 위해 컨테이너마다 가상 네트워크 인터페이스를 호스트에 생성하며 이 인터페이스의 이름은 veth로 시작 - veth 인터페이스는 사용자가 직접 생성할 필요는 없으며 컨테이너가 생성될 때 도커 엔진이 자동으로 생성 - veth 인터페이스는 호스트가 갖고 있는 eth0, eth1 등과 연결되어 있음 - docker0 ..
도커 이미지로 컨테이너를 생성하면 이미지는 읽기 전용이 되며 컨테이너의 변경 사항만 별도로 저장해서 각 컨테이너의 정보를 보존한다. 이미 생성된 이미지는 어떠한 경우로도 변경되지 않으며, 컨테이너 계층에 원래 이미지에서 변경된 파일시스템을 저장 mysql 컨테이너를 삭제하면 컨테이너 계층에 저장돼 있던 데이터베이스의 정보도 삭제 도커의 컨테이너는 생성과 삭제가 매우 쉬우며, 실수로 컨테이너를 삭제하면 데이터를 복구할 수 없게 됨 이를 방지하기 위해 컨테이너의 데이터를 영속적(Persistent) 데이터로 활용할 수 있는 방법이 몇가지 있다. 그중 가장 활용하기 쉬운 방법이 볼륨(Volume)을 활용하는 것 [볼륨 활용 방법] 1. 호스트와 볼륨 공유 2. 볼륨 컨테이너 생성 3. 도커가 관리하는 볼륨 생..
대부분의 서비스는 단일 프로그램으로 동작하지 않는다. 예로 Web Service와 WAS, DB등은 서로 연결되어 완전한 서비스로서 동작하는 것이 일반적이다. 위 서비스들을 VM 형태가 아닌 컨테이너 환경으로 구축하게 된다면, 여러 개의 애플리케이션을 한 컨테이너, 즉 All-in-one 형태로 구축할 수 있다. 그러나 이 구조는 VM 구조 인프라에서도 권장하지 않는 환경이다. 1개의 애플리케이션을 1개의 VM 또는 1개의 컨테이너에 각각 구축하는 것이 모든 벤더에서의 권장 사항이다. 따로따로 서비스를 구축하면 VM간, 컨테이너간의 독립성을 보장함과 동시에 버전관리, 소스코드 모듈화등이 더욱더 쉬워진다. 도커 공식홈페이지에서도 위와 같은 구조를 권장하며, 한 컨테이너에 프로세스 하나만 실행하는 것이 도커..
- Total
- Today
- Yesterday
- k8s란
- Docker 바인딩
- docker 볼륨
- docker network
- docker pull
- docker 명령어
- docker run
- CKA 시험
- 도커 포트
- 쿠버네티스 종류
- 쿠버네티스 설치 방법
- 쿠버네티스 설치 종류
- 도커 설치
- 도커 볼륨
- kubespray
- docker create
- 도커 volume
- 쿠버네티스란
- 도커 포트 바인딩
- docker
- Docker Port
- CKA 취득후기
- 쿠버네티스 설치
- kubeadm
- 도커
- 도커 네트워크
- docker volume
- docker 설치
- docker command
- 쿠버네티스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |