📚study✨

    섹션7.[중급편]컨트롤러

    본 포스팅은 김태민 님의 대세는 쿠버네티스 [초급~중급] 섹션 7를듣고 요약한 내용입니다. 목차 Stateless Application과 StatefulApplication Ingress Ingress Controller Ingress의 세가지 주요 기능 AutoScaler HPA Stateless Application과 Stateful Application 애플리케이션의 종류에는 Stateless Application과 Stateful Application이 있다. Stateless Application은 웹서버로 아파치, nginx 등이 있다. Stateful Application은 데이터베이스로 몽고디비, 마리아디비, 레디스 등이 있다. stateless application은 app이 여러개 배포..

    [쿠버네티스] Pod

    본 포스팅은 김태민 님의 대세는 쿠버네티스 [초급~중급] 섹션 5를듣고 요약한 내용입니다. Pod status: phase: Pending conditions: - type: Initialized status: 'True' lastProbeTime: null lastTransitionTime: '2019-09-26T22:07:56Z' - type: ContainersReady status: 'False' lastProbeTime: null lastTransitionTime: '2019-09-26T22:08:11Z' reason: ContainersNotReady containerStatuses: - name: container state: waiting: reason: ContainerCreating l..

    쿠버네티스(Kubernetes) 기초

    본 포스팅은 김태민 님의 대세는 쿠버네티스 [초급~중급] 섹션3, 4를듣고 요약한 내용입니다. 대세는 쿠버네티스 [초급~중급] - 인프런 | 강의 쿠버네티스는 앞으로 어플리케이션 배포/운영에 주류가 될 기술 입니다. 이 강좌를 통해 여러분도 대세에 쉽게 편승할 수 있게 됩니다., - 강의 소개 | 인프런... www.inflearn.com 기본 오브젝트 Pod Service Volume ConfigMap, Secret Namespace, ResourceQuota, LimitRange 컨트롤러 Auto Healing Pod나 Node에 장애가 생겨 다운될 경우, 컨트롤러는 새로운 노드에 Pod를 넣어 재시동합니다. 다른말로 자동 복구라고도 하는데, 실패한 인스턴스를 즉시 감지하고 자동으로 다시 생성하여 클..

    The Twelve-Factor app

    최근 소프트웨어를 서비스 형태로 제공하는게 일반화 되면서, 웹앱 혹은 SaaS(Software As A Service)라고 부르게 되었다. 설정 자동화를 위한 절차(declarative) 를 체계화 하여 새로운 개발자가 프로젝트에 참여하는데 드는 시간과 비용을 최소화한다. OS에 따라 달라지는 부분을 명확히하고, 실행 환경 사이의 이식성을 극대화 한다. 최근 등장한 클라우드 플랫폼 배포에 적합하고, 서버와 시스템의 관리가 필요없게 된다. 개발 환경과 운영 환경의 차이를 최소화하고 민첩성을 극대화하기 위해 지속적인 배포가 가능하다. 툴, 아키텍처, 개발 방식을 크게 바꾸지 않고 확장(scale up) 할 수 있다. Twelve-Factor app은 SaaS 앱을 만들기 위한 방법론이다. 어떤 프로그래밍 언..

    도커 이미지 빌드와 Dockerfile 기초

    도커 이미지(Docker image) -가상머신의 이미지 가상 머신의 특정 상태를 그대로 저장해두고, 이를 나중에 다시 복원하는 것이 가능합니다. 일반적으로 매우 큰 편이며, 파일 시스템을 비롯해 이미지를 만드는 시점의 메모리 내용과 그 외에 시스템을 구성하기 위한 다양한 정보들을 포함하고 있습니다. -도커 이미지 도커 이미지는 그냥 순수한 파일들의 집합입니다. 메모리 정보나 그 이외의 독자적인 형식으로 저장해둔 시스템의 정보 같은 것은 없습니다. 파일이 아닌 메타 데이터 정도가 존재합니다. 컨테이너에서 가장 핵심적인 역할을 하는 기능이 바로 chroot와 같이 프로세스가 바라보는 루트 디렉터리를 바꾸는 기능입니다. 일반적으로 리눅스 시스템에서 모든 프로세스는 같은 루트를 공유합니다. 그런데 chroot..

    컨테이너란? 리눅스의 프로세스 격리 기능

    목차 리눅스 컨테이너란? 컨테이너와 VM의 차이 리눅스 컨테이너의 주요한 특징 컨테이너의 종류 컨테이너를 사용해야하는 이유 컨테이너 기반 서비스 운영 사례 컨테이너 런타임 컨테이너 오케스트레이션 컨테이너에서 사용하는 컨테이너 격리 기능 CHAPTER 01. 리눅스 컨테이너란? 리눅스 컨테이너는 운영체제 수준의 가상화 기술로 리눅스 커널을 공유하면서 프로세스를 격리된 환경에서 실행하는 기술입니다. 다시 말해, 컨테이너란 프로세스 격리 기술로, 사용자가 사용할 프로그램과 환경 설정들이 컨테이너에 담겨 격리되어 실행되는 것입니다. 컨테이너에는 코드, 런타임, 시스템 도구, 시스템 라이브러리 등 서버에 설치되는 무엇이든 포함될 수 있으며, 실행 중인 환경에 관계 없이 언제나 동일하게 실행될 것을 보증합니다. 컨..

    github 프로젝트 올리기

    깃헙에 큰 프로젝트를 올릴 때는 파일 수가 많아서 기존의 upload files로는 불가능합니다. 따라서 다음 방법으로 업로드해야합니다. 1. 진행중인 프로젝트의 폴더에서 터미널 창을 엽니다. 2. 사용자 설정을 합니다. git config --global user.name "username" git config --global user.email "email" 3. 저장소를 초기화하기 위해 git init을 합니다. (git 저장소를 생성합니다) git init 4. git add . //working directory의 모든 파일을 staging area에 추가합니다. git status //현재 상태를 볼 수 있습니다. git commit -m "설명" //커밋합니다. git remote add o..

    🐳Docker / Dockerfile을 이용한 컨테이너 생성 (+express)

    지난 시간에 이어서 Docker 기초 실습 부분 진행하겠습니다. Docker의 개념에 대해서는 이전 포스팅 https://toki0411.tistory.com/16을 참고해주시길 바랍니다. 1. 먼저 js파일을 만듭니다. 코드는 express에서 제공해주는 코드 그대로 들고왔습니다. https://expressjs.com/en/starter/hello-world.html Express "Hello World" example Hello world example Embedded below is essentially the simplest Express app you can create. It is a single file app — not what you’d get if you use the Express ..