본문 바로가기
반응형

분류 전체보기105

[kubernetes] NFS 정적 프로비저닝 (PV, PVC) 이번 포스팅에서는 NFS를 이용한 정적 프로비저닝에 대하여 써보겠다. 정적 프로비저닝이랑 PV 및 PVC리소스를 직접 생성하고 사용하는 방식이다. 이전 포스팅에서는 직접 워커노드에 NFS서버를 설치하고 클라이언트 노드의 디렉터리와 마운트하는 방식으로 스토리지를 공유했지만 정적 프로비저닝 방식을 사용하면 동일한 작업을 조금더 편하게 할 수 있다. 혹시 쿠버네티스의 스토리지 관리에 대하여 사전지식이 없다면 아래 링크에서 PV/PVC개념만 읽고오는 것을 추천한다. [kubernetes] 쿠버네티스의 스토리지 관리 쿠버네티스 클러스터 스토리지 관리 1. 파드 내부의 각 컨테이너는 고유하게 분리된 파일시스템을 가진다. 2. 컨테이너의 파일 시스템은 컨테이너 이미지에서 제공되기 때문에 컨테이너가 재 codemonk.. 2022. 4. 25.
[kubernetes] 쿠버네티스 에서 NFS서버 사용하기(nfs기반 디스크) 지난 시간에 NFS(Network File system)서버에 대해 알아보았다. 이번 포스팅에서는 NFS서버를 활용한 디스크 (PD)를 기반으로한 PV/PVC를 구축해보겠다. 실습환경 *GKE(Google Kubernetes Engine)환경을 사용한다. 그럼 먼저 실습환경을 구성해보자 실습환경 구축하기 1)GCP에 가입하면 300달러상당의 크레딧을 준다. 이것을 이용해서 GCP의 서비스를 사용할 수 있다. 회원가입 -> GKE(Google Kubernetes Engine) -> 만들기 -> GKE standard 구성을 선택한다. (*밑에 그림의 cluster-1은 미리 설치해둔것이다. 원래는 아무런 클러스터도 없는 게 정상이다.) 2) 클러스터 기본사항을 건드리지 않는다. 대신 왼쪽의 노드 풀 -> .. 2022. 4. 17.
[kubernetes] 쿠버네티스의 스토리지 관리 쿠버네티스 클러스터 스토리지 관리 1. 파드 내부의 각 컨테이너는 고유하게 분리된 파일시스템을 가진다. 2. 컨테이너의 파일 시스템은 컨테이너 이미지에서 제공되기 때문에 컨테이너가 재 시작할 때마다 컨테이너 이미지내의 파일시스템으로만 시작한다. 3. 재 시작된 컨테이너는 이전 컨테이너에 쓰여진 파일시스템의 내용을 볼 수 없다. 컨테이너는 원본 이미지로만 재 시작된다. 4. 스토리지 볼륨은 파드와 동일한 라이프 사이클을 가진다. 이는 파드가 시작되면 볼륨이 생성되고 파드가 삭제되면 볼륨이 삭제된다는 의미를 가지므로 볼륨의 컨텐츠는 컨테이너를 다시 시작해도 지속된다. 5. 파드내의 모든 컨테이너가 볼륨을 공유할 수 있다. 쿠버네티스 클러스터 스토리지 컴포넌트 볼륨 관리 1. 볼륨(volume)은 파드의 컨테.. 2022. 4. 14.
[kubernetes] 쿠버네티스의 디플로이먼트(deployment)란? 애플리케이션 배포 유형과 관리 (디플로이먼트) 1. 디플로이먼트 리소스로 파드와 레플리카셋(ReplicaSet)에 대한 선언적 업데이트를 제공한다. 2. 디플로이먼트를 사용하는 경우 실제 파드는 디플로이먼트가 아닌 레플리카셋에 의해 생성되고 관리된다. 3. 디플로이먼트를 생성하면 레플리카셋 리소스가 그 아래에 생성된다. 파드를 감시하는 레플리카셋이 디플로이먼트를 지원한다. 레플리카셋은 파드를 생성하고 롤아웃 상태를 체크해서 성공 여부를 확인한다. 4. 디플로이먼트의 상태가 에러가 생길 경우 이전 버전으로 롤백한다. 각 롤백은 디플로이먼트의 수정 버전에 따라 업데이트한다. 디플로이먼트의 배포와 업데이트 방법 3가지 소개 1. 블루-그린 디플로이먼트 2. 롤링 업데이트 3. 카나리 배포 1. 블루-그린 디플.. 2022. 4. 12.
[kubernetes] 쿠버네티스의 controller(컨트롤러)란? 컨트롤러 매니저 1. 클러스터의 상태를 감시하고 현재 상태와 원하는 상태가 일치하도록 관리하는 작업 2. 컨트롤러 매니저는 컨트롤러(Replica controller, Service controller, Volume Controller, Node controller 등)를 생성하고 관리하는 역할을 한다. 컨트롤러 종류 1. 레플리케이션 컨트롤러(RC), 데몬 셋(DS),잡 컨트롤러 2. 디플로이먼트 컨트롤러 3. 스테이트 풀셋 컨트롤러 4. 노드 컨트롤러 5. 서비스 컨트롤러 6. 엔드포인트 컨트롤러 7. 네임스페이스 컨트롤러 8. 볼륨 컨트롤러 기본 오브젝트 종류 - pod, servicd, volume, namespace - 기본 오브젝트는 컨트롤러 매니저에 의해 생성, 관리된다. pod 란? 1. .. 2022. 4. 10.
[Linux] 표준입력 & 출력 & 에러 , 파이프 문자, 쿼팅문자, 와일드카드 Linux에서 Linux에서 모든 환경 구성은 파일로 구성되어 있다. 때문에 리눅스에서 명령어를 사용할때는 파일을 가리키는 디스크립터에 대한 방향을 잘 이해하면 수준높은 작업을 할 수 있다. 아래는 표준입력, 표준출력, 표준에러에 대한 정리를 해놓은 표이다. - 리다이렉션 이란? 리다이렉션(Redirection)이란 말 그대로, 방향을 변경하는 것을 의미합니다. 리눅스에선 꼭 키보드로 표준 입력을 받거나 화면으로 표준 출력을 하는 것이아니라, 파일로 표준 입력을 받고, 파일로 표준 출력을 받는 등의 기능을 의미합니다. 리다이렉션을 이용하면 리눅스를 좀 더 자유롭고 편하게 사용할 수 있습니다. - 기초 사용법 (리다이렉션을 통한 표준출력&에러 제어하기) - 활용 활용 예시 표준입력 = 0 - 표준입력은 명.. 2022. 4. 10.
[Docker] Docker 실습으로 알아보기 (4/4) 백그라운드 실행 : Detached모드1. 옵션 -d 2. 데몬 모드라고 부르며 컨테이너가 백그라운드로 실행3. 백그라운드로 실행한 컨테이너 내에 명령어를 실행하면 실행 결과인 표준 출력이 표시되지 않는다. 실행결과를 확인하려면 #docker logs 컨테이너명을 사용한다.4. 백그라운드 모드는 주로 web server처럼 데몬 형태로 실행을 지속할 애플리케이션에서 사용한다. 실습실습 - web server를 백그라운드 모드로 실행하고 웹 데몬으로 실행을 유지하도록 컨테이너를 실행한다[root@cent1 ~]# cd[root@cent1 ~]# cd lab[root@cent1 lab]# cat Dockerfile #vi Dockerfile로 만들어준 후 확인FROM  ubuntu:14.04MAINTAINE.. 2022. 4. 8.
[Docker] Docker 실습으로 알아보기 (3/4) 컨테이너 통신 1. 컨테이너의 네트워크는 기본적으로 외부와 통신이 불가능하다.  2. 외부통신을 원하면 외부로 노출할 Port를 지정해야 한다.  3. docker run -p 옵션 사용시 외부 노출할 포트를 지정 가능하다.   예) # docker run -d -p 8080:80 --name con1 httpd 외부에서 호스트서버의 8080 포트로 요청이 들어오면 con1 컨테이너의 80 포트로 해당 요청을 포워딩한다.  EXPOSE 사용1. EXPOSE  2. EXPOSE 하나로 포트 번호를 여러 개 설정 가능하다. 3. EXPOSE는 호스트와 연결할 컨테이너의 포트 번호를 설정한다.  4. docker run --expose 옵션과 같다. 5. EXPOSE 80, EXPOSE 443 또는EXPOSE.. 2022. 4. 7.
반응형