전체 글

IT에 대한 지식과 개인 공부 내용을 정리하는 공간으로 사용하고 있습니다. 문제가 되는 글이나, 이미지가 있으면 말씀 부탁드립니다.
IT/Kubernetes

[Study][K8S Network] Pod와 PAUSE 컨테이너

Pod란?Pod란 Kubernetes의 기본 단위로, 하나 이상의 컨테이너를 포함하는 컨테이너의 집합이다.이런 Pod는 여러 컨테이너가 함께 배치되어 서로 네트워크와 스토리지 자원을 공유하는 격리된 환경을 제공하는데,이런 점으로 볼 때 K8S 환경에서 Pod하나는 하나의 어플리케이션의 기본 배포 단위로 보기도 한다.(물론 다른 식으로 Pod간 통신이나 여러 동작들이 있을 수 있다.)https://kubernetes.io/docs/concepts/workloads/pods/ Pod는 아래의 속성을 가진다고 할 수 있다.컨테이너 그룹: 하나의 Pod 내에는 여러 컨테이너가 포함될 수 있다.Pod 내에서 실행되는 모든 컨테이너는 동일한 노드에서 실행되며, Pod의 생명 주기를 공유한다. 즉, Pod가 삭제되면..

IT/Kubernetes

[Study][K8S Network] KIND (Kubernetes IN Docker)

Kubernetes란?앞서 알아본 컨테이너를 시스템 차원에서 자동으로 관리해주기 위한 오픈소스 플랫폼이다.워낙 유명하기도 하고 이전에 많이 테스트해보기도 했기 때문에 간단한 정리와 추후에 시간을 내서 더 공부하기 위한 Deep Dive 자료만 추가로 정리한다.Kubernetes의 역할https://kubernetes.io/docs/concepts/overview/#why-you-need-kubernetes-and-what-can-it-do OverviewKubernetes is a portable, extensible, open source platform for managing containerized workloads and services, that facilitates both declarativ..

IT/Kubernetes

[Study][K8S Network] Linux Container 격리 - 3

Linux Container 격리https://ersia.tistory.com/45 [Study][K8S Network] Linux Container 격리 - 2Linux Container 격리https://ersia.tistory.com/44 [Study][K8S Network] Linux Container 격리 - 1Docker란?Docker 란 어플리케이션 영역을 인프라와 분리해 가상의 실행환경을 제공해주는 오픈소스 플랫폼이다.흔히 Dockerersia.tistory.com해당 글에 이어서 Namespace에 대해 좀 더 상세히 알아보자.지금까지 chroot와 pivot_root를 통해 파일시스템의 격리를 테스트했다.하지만 파일시스템이 격리된 상태에서 프로세스를 조회해보면 여전히 프로세스들 간에 격..

IT/Kubernetes

[Study][K8S Network] Linux Container 격리 - 2

Linux Container 격리https://ersia.tistory.com/44 [Study][K8S Network] Linux Container 격리 - 1Docker란?Docker 란 어플리케이션 영역을 인프라와 분리해 가상의 실행환경을 제공해주는 오픈소스 플랫폼이다.흔히 Docker 엔진 설치와 Docker 명령어를 통해 이미 패키징된 어플리케이션을 가져와ersia.tistory.com해당 글에 이어서 chroot에 대해 좀 더 상세히 알아보자.chroot의 한계점chroot를 통해 파일 시스템 격리를 수행했지만 실제 container 격리에 chroot가 사용되지는 않는데,chroot의 격리에는 한계점이 존재하기 때문이다. 그 중에 하나인 탈옥이 가능한 취약점을 아래의 과정을 통해 알아보자.c..

IT/Kubernetes

[Study][K8S Network] Linux Container 격리 - 1

Docker란?Docker 란 어플리케이션 영역을 인프라와 분리해 가상의 실행환경을 제공해주는 오픈소스 플랫폼이다.흔히 Docker 엔진 설치와 Docker 명령어를 통해 이미 패키징된 어플리케이션을 가져와 가상의 환경에서 빠르고 편하게 관리할 수 있다.이번 스터디에서는 단순 명령어로 Wrapping 된 Container를 사용하기 위해서 어떤 기술이 필요한지, 실제 물리 서버와 가상환경을 어떻게 격리한 것인지 조금 더 자세히 알아봤다.Container란?Container를 어떻게 격리하는 것인지 알기에 앞서, Container가 무엇인지 알아야 뭐를 격리한건지 알 수 있다.Docker에서는 가상의 실행환경을 Container라고 부른다.좀 더 정확히 표현하는 용어는 '컨테이너화된 프로세스(Contain..

IT/IaC(Infrastructure as Code)

[Study][Ansible] Semaphore를 통한 Ansible 관리

Semaphore Ansible을 여태 Linux command로만 관리했기 때문에 어떤 사람이 어떤 명령어를 수행했는지는 전적으로 Linux OS의 이력을 통해서만 확인할 수 있었다. 이런 경우 여러 명이 Ansible을 사용할 경우 이슈가 생길 때 추적이 불가능하고 관리가 어렵게 된다. 이를 해결하기 위한 방법 중 하나로 웹 GUI 도구인 Semaphore를 사용해보았다. https://docs.semui.co/ Introduction - Semaphore Docs Semaphore is written in pure Go and available for Windows, macOS and Linux (x64, ARM, ARM64). Semaphore is an open-source project wit..

IT/IaC(Infrastructure as Code)

[Study][Ansible] Ansible로 Windows 빌드 서버 관리하기-3

Windows 빌드 서버 구성에 필요한 Ansible 패키지 구성 https://ersia.tistory.com/40 [Study][Ansible] Ansible로 Windows 빌드 서버 관리하기-2 Windows 빌드 서버 초기 구성을 위한 Ansible 설계 https://ersia.tistory.com/39 [Study][Ansible] Ansible로 Windows 빌드 서버 관리하기-1 Ansible과 Windows Host 이전에 Windows 환경에서 Ansible을 사용하는게 불가능하다는 ersia.tistory.com 이전에 구성한 Ansible Role에 실제 Windows 빌드에 필요한 패키지를 하나씩 구성해보자. Windows 빌드 서버에 필요한 패키지 Chocolatey 설치 및..