본문 바로가기

전체 글231

[쿠버네티스] 쿠버네티스의 구조 쿠버네티스쿠버네티스는 컨테이너화된 앱의 자동 배포, 확장 및 관리를 해주는 오픈소스다.쿠버네티스 구조쿠버네티스 클러스터, 컨트롤 플레인, 노드, 워크로드, 네트워크, 스토리지 쿠버네티스 클러스터마스터 노드: 개발자가 주로 마스터 노드와 통신워커 노드: 사용자는 인터넷을 통해 워커 노드와 통신하는 경우가 많음위 구조를 유지하기 위해서는 마스터 노드와 워커 노드 간 유기적인 통신이 중요한데, 이를 위해 CNI(container network interfaces)라는 개념이 사용된다.CNI: 쿠버네티스 클러스터에 존재하는 컨테이너 간의 통신을 위해 필요한 인터페이스. 대표적인 cni 플러그인은 flannel과 calico임컨트롤 플레인마스터 노드는 컨트롤 플레인을 다루는데, 컨트롤 플레인은 쿠버네티스 클러스터.. 2024. 7. 15.
[docker] docker storage(volume, bind, tmpfs) 도커는 컨테이너를 삭제하면 내부 데이터가 다 날라가는데 데이터를 저장시킬 공간을 docker storage라고 부름도커 스토리지 종류bind mount : share docker host directory directlyvolume : create a volume using docker and share it with the container’s directorytmpfs : file save in docker host memory, when you delete container, file also deleted도커 볼륨(volume 방식)볼륨 확인docker volume ls볼륨 만들기docker volume create [volume name]run container using myvolume01do.. 2024. 7. 11.
[docker] 이미지, 컨테이너 생성 도커 구성요소도커 클라이언트docker-cli라고도 부르며 터미널이라고 생각하면 편함. dockerd API를 활용해 build, pull, run과 같은 명령을 내리며 도커 데몬과 통신함도커 데몬dockerd라고 부르며 백그라운드에서 실행되는 데몬 프로세스에 해당됨. 도커 api 요청을 수신하고 도커 이미지, 컨테이너 등과 같은 도커와 관련된 객체를 관리함containerd컨테이너의 실행만 담당하는 runc와 다른 역할을 하며 고수준 컨테이너 런타임에 해당함컨테이너 실행과 관리에 필요한 기능을 수행하는 오픈소스 컨테이너 런타임, 컨테이너의 생명주기를 모두 관리함. (생명주기: 도커 이미지 전송, 컨테이너 실행, 스토리지, 네트워크 등)runccontainerd는 실행 이외에도 컨테이너 관리를 위한 다양.. 2024. 7. 11.
맥에서 패키지 관리자 설치하기 리눅스에서의 apt-get과 같은 패키지 관리자가 맥에도 존재한다. 그것은 바로 brew다. https://brew.sh/ko/ HomebrewThe Missing Package Manager for macOS (or Linux).brew.sh 해당 사이트에서 시키는대로 하면 설치할 수 있다. 터미널에서 명령어를 복붙하고 중간에 아래 두개의 명령어를 쳐주면 사용 가능하다.==> Next steps:- Run these two commands in your terminal to add Homebrew to your PATH:    (echo; echo 'eval "$(/opt/homebrew/bin/brew shellenv)"') >> /Users/sangs/.bash_profile    eval "$(/.. 2024. 7. 9.
[AWS] CloudFront CloudFrontcloudfront는 동적, 정적, 실시간 웹사이트 컨텐츠를 사용자에게 더 빨리 전달하기 위해 나온 서비스다.  CDN이라는 개념을 이해하는게 중요하다. Content Delivery network의 약어로 웹페이지가 어디에서 호출되는지, 웹페이지를 호출한 사용자가 어느 지역에 거주하는지 등에 근거하여 웹페이지에 전달해준다.-> cdn을 통해 html, javascript, image 등 컨텐츠들의 로딩 속도를 아주 빠르게 향상시킬 수 있다. 예) 한국에서 호스팅중인 웹사이트에 전 세계 각지에서 접근하려하면 지역마다 웹페이지의 로딩 속도가 다를 것이다. (이때 한국은 origin이라고 부름)멀어질수록 더욱 느리다. CDN은 사용자에게 가까운 위치에 있는 Edge Location을 통해 .. 2024. 7. 4.
[AWS] Lambda 람다AWS Lambda는 서버리스를 구현하는데 핵심이다. 이벤트가 발생하면 람다가 실행되고 람다 함수에 있는 코드가 실행된다.람다는 NodeJS, Python, Java, GO 등 다양한 언어를 지원한다. 매달 최초 100만회까지의 함수 호출은 무료로 제공한다고 한다. PoC 진행할 때 좋을 것 같다. 람다는 최대 300초까지만 실행될 수 있고 최대 512MB 만큼의 일시적인 디스크 공간을 제공한다. 또한 최대 50MB의 Deployment Package를 허용한다고 한다. 그래서 50MB가 넘으면 S3에 넣고 람다함수에 경로를 지정해주면 된다고 한다.서버리스온프레미스는 서버를 구축하는 초기 비용이 많이 든다. 그리고 사용량의 증감에 유연하게 대처할 수 없다. 클라우드는 이러한 온프레미스의 단점을 극복하.. 2024. 7. 2.
728x90