본문 바로가기
반응형

🌴 DevOps/Docker & K8s35

쿠버네티스 환경구성(kops.ver)(1/2) -클러스터/노드 구성 테스트환경 aws ec2 인스턴스에서 도커컨테이너 (우분투16.04)사용 (추가) 이미 컨테이너 생성한 후라면, 해당 컨테이너에 접속하기 ▼▼▼ docker 명령어 참고 ▼▼▼ 컨테이너 검색 : docker -ps | grep kops 컨테이너 시작 : docker start kops 컨테이너 접속 : docker attach kops 1. kops를 사용할 도커컨테이너 생성 (컨테이너이름 : kops) docker run -it -name kops ubuntu:16.04 2. 우분투 컨테이너 안에서 패키지 설치 apt update && apt install python3 python3-pip wget vim openssh-server -y pip3 install awscli 3. kops, kubetl.. 2020. 5. 17.
쿠버네티스 환경구성(kubeadm.ver)(1/5) - kubeadm 사용 전제조건 쿠버네티스 환경구성 Tool 1. kops(콥스) : 클러스터 관리하는 CLI도구 -> AWS Cloud에서만 사용가능, 자동환경설정 구성을 해줌 ▼▼▼ kops(콥스) 로 쿠버네티스 환경구성하기 ▼▼▼ https://pearlluck.tistory.com/166?category=854934 쿠버네티스 환경구성(kops.ver) 테스트환경 : 우분투16.04생성해서 그 내부에서 테스트 1. kops를 사용할 도커컨테이너 생성 docker run -it -name kops ubuntu:16.04 2. 우분투 컨테이너 안에서 패지키 설치 apt update && apt install python3.. pearlluck.tistory.com 2. kubeadm(큐브어드민) : 쿠버네티스에서 제공하는 설치툴 -.. 2020. 5. 17.
쿠버네티스 구성요소(5/5)- Namespace 목적 및 특징 Namespace 클러스터내의 논리적인 분리단위 1) 사용사례 pod,service 등 namespace별로 생성 및 관리 가능 사용자 권한도 naespace별로 나눠서 부여가능 하나의 클러스터 안에서 목적이 다른 환경을 구성할 경우 개발/운영/테스트 namespcae로 나눠서 가능 2) 목적 namepsace별 사용자의 접근권한 다르게 운영 namepsace별 리소스의 할당량 지정가능 (개발계는 CPU 100, 운영계는 CPU 400 등) namepsace별 리소스를 나눠서 관리할 수 있다 3) 특징 물리적인 환경분리가 아니라 논리적인 분리 다른 Namespace간의 pod라도 통신은 가능 출처 https://twofootdog.tistory.com/5?category=845779%EF%BB%BF 쿠버.. 2020. 5. 17.
[Docker4] Docker로 Apache/Tomcat 연결하기(진행) 테스트 환경 : Ubuntu 18.04.4 LTS 테스트 목표 : 하나의 인스턴스에 이미지(APACHE/TOMCAT)사용해서 통신 1. Apache 설치 이미지 검색 : docker search apache2 이미지 실행 : sudo docker run -d -i -t -p 80:80 --name apache2 symbiote/apache2 run 옵션 d : 백그라운드모드 p : 호스트와 컨테이너 포트연결 name : 컨테이너 이미지 설정 이미지명 : symbiote/apache2 https://bluedayj.tistory.com/74 [Docker] 아파치와 톰캣설치하기 #1 아파치 설치 오랫만에 포스팅을 하는군요!! 정말 하루하루가 바쁩니다. ㅠㅠ 도커위에 아파치와 톰캣을 설치하고 연동하는 방법을.. 2020. 5. 3.
[Docker3] docker 기본명령어(run/ps/logs/exec) 1. 컨테이너관련 1. 컨테이너 실행하기 (run) docker run 이미지명 run옵션 https://pearlluck.tistory.com/144 [Docker2] Docker 설치 및 이미지(ubuntu/nginx/mysql) 실행하기 1. 테스트환경 os : aws의 Ubuntu 18.04.4 LTS 2. docker 설치 sudo apt-get update sudo apt-get install docker.io 3. docker 설치 확인 docker --version 3. hello-world 컨테이너 실행하기 docker에서 컨테.. pearlluck.tistory.com 2. 컨테이너 목록 확인하기(ps) docker ps -a (-all) 3. 컨테이너 시작 sudo docker sta.. 2020. 5. 3.
[Docker2] Docker 설치 및 이미지(ubuntu/nginx/mysql) 실행하기 1. 테스트환경 os : aws의 Ubuntu 18.04.4 LTS 2. docker 설치 sudo apt-get update sudo apt-get install docker.io 3. docker 설치 확인 docker --version 3. hello-world 컨테이너 실행하기 docker에서 컨테이너 애플리케이션을 실행하는 방법 1) Pull : 이미지 가져오기 (캐시 또는 remote repository 에서) 2) Create : 이미지 빌드해서 컨테이너 생성 3) Start : 이미지 실행하기 이 3가지를 한번에 수행하는 명령어 : docker run hello-world locally에서 hello-world 이미지를 찾지 못했지만, library/hello-world에서 찾아서 pull.. 2020. 4. 30.
쿠버네티스 구성요소(4/5) - Service 구성 및 종류/kube-proxy 서비스 (Service) 고정된 주소로 pod에 접근하기 위한 중간다리 pod는 Controller에 의해 관리되기 때문에 고정되어 있지 않음 그래서 pod가 클러스터내에 어디에 있던지 상관없이 고정된 주소로 사용할 수 있도록 서비스 사용 Label Selector로 pod를 선택해서 하나의 endpoint로 노출되는 pod의 집합 즉, 외부에서 pod와 접속하기 위한 중간다리(gateway) 역할 1)Service 필요성 동적으로 변하는 pod에게 고정된 방법으로 접근가능 외부에서 서비스를 거쳐서 pod에게 접근가능(ingress대신) pod가 옮겨겨갔을 때 서비스는 자동으로 새로뜬 pod를 바라보기 떄문에 실제 접속하는 사용자는 서비스만 바라보고 있으면 댐 2) Service 구성 여러개의 pod와 .. 2020. 4. 20.
쿠버네티스 구성요소(3/5) - Volume 구성 및 특징 Volume pod에 종속되는 디스크 (컨테이너의 외장디스크) 1) 왜 필요? Pod가 기동할때 컨터네이너 마다 생성되는 로컬디스크는 영구적이지 않음(휘발) 즉, 컨테이너가 새로 배포되면 로컬디스크 내용이 사라짐 그래서 영구적으로 파일을 저장해야하는 경우 볼륨사용 * 스토리지 볼륨(Storage Volume) : 영구적으로 저장해야하는 파일 저장하는 디스크 2) 언제 사용? 컨테이너가 재시작해도 데이터가 사라지면 안될때 일반적으로 컨테이너는 상태가 없는(Statelss) 앱 사용 즉, 어떤 이유로건 컨테이너가 죽었을떄 현재까지의 데이터가 사라진다 상태가 없기 때문에 장점 : 문제가 있거나 노드 장애가 발생하면, 컨테이너를 새로띄우거나 다른 곳으로 옮길 수 있음 단점 : 컨테이너를 새로 띄울때 현재까지 데.. 2020. 4. 20.
쿠버네티스 구성요소(2/5) - Pod 구성 및 특징 Pod (파드) 컨테이너화 된 애플리케이션 오브젝트 쿠버네티스에서 배포할 수 있는 가장 기본적인 단위 즉, 컨테이너를 여러개로 묶어서 관리하는 배포하는 단위 (컨테이너 서비스들을 담는 그릇) 워커노드 안에서 실행되는 컨테이너들의 집합 쿠버네티스는 컨테이너를 pod라는 단위로 묶어서 한꺼번에 배포할 수 있음 그래서 컨테이너들을 개별적으로 관리하는게 아니라 pod라는 단위로 묶어서 컨테이너들을 관리함 1) pod 구성 한개 이상의 컨테이너를 가지고 있음 (일반적으로 1pod 1Container) 스토리지, 네트워크 속성을 가지고 서로 공유하고 있음 2) pod 특징 한 개 이상의 컨테이너를 묶어서 배포한다 예를 들어 nginx,wsgi, django 컨테이너가 하나의 pod안에 들어가서 한꺼번에 띄울 수 있.. 2020. 4. 20.
쿠버네티스 구성요소(1/5) (Object/Controller) K8S 구성요소 크게보면 Obejct : 가장기본적인 구성단위 object spec : obejct 설정값을 정의한 내용(yaml 파일형식) basic object : k8s에 의해 배포/관리 되는 가장 기본적인 오브젝트 Pod : 관련내용 보러가기 Service : 관련내용 보러가기 Namespace : 관련내용 보러가기 Volume : 관련내용 보러가기 Controller : Basic Object들을 생성/관리하는 추가 기능을 가진 것 1. 객체(Object) 가장 기본적인 구성단위 쿠버네티스가 애플리케이션을 배포하기 위해 원하는 상태(desired state) -> '상태'를 관리하기 위한 대상 즉, 기본 오브젝트를 가지고 애플리케이션을 설정하고 배포함 1) 오브젝트 스펙 (Object Spec).. 2020. 4. 19.
728x90