본문 바로가기

분류 전체보기224

컨테이너 만들기 4 ) 컨테이너의 격리와 자원보장 방법(네임스페이스) 문제점전용파일시스템이 있더라도 추가적인 문제들이 있었다. 여전히 컨테이너에서 호스트의 다른 프로세스들이 보이고, 호스트의 네트워크를 공유한다. 여전히 루트 권한을 사용하고 있었다. 이를 개선하기 위해 네임스페이스 개념이 등장한다. 네임스페이스의 특징앞서 사실 격리를 설명하면서 마운트 네임스페이스를 먼저 살펴보았다.- 모든 프로세스는 타입별로 네임스페이스에 속한다.- 자식 프로세스는 부모의 네임스페이스를 상속한다.  네임스페이스 사용방법unshare [옵션] 프로그램 [[arguments ...]] 옵션-m(mount)-u(uts)-i(ipc)-p(pid)-n(net)-U(user) 실습실습 전 먼저 네임스페이스를 확인하는 방법을 알아보자.네임스페이스 확인 방법 #1proc에서 확인하는 방법이 있다. [].. 2024. 9. 1.
컨테이너 만들기 3) Overlay Filesystem 패키징의 문제 (중복, 그로 인한 비용 등)패키징으로 잘 모으긴 했지만 우리가 서버를 사용할 때 단순히 운영체제만 사용하는 것이 아니고, nginx, mysql 등 다양한 프로그램을 올려서 사용하고 있다. 이 경우 운영체제 + nginx, 운영체제 nginx+mysql 등 추가될 때마다 이미지를 만들어야하고, 개개인 별로 이미지를 만들게 되면서 중복이 많이 발생하게 된다.  이 경우 점점 불필요한 비용과 비효율이 발생하게 되므로 이러한 중복문제를 해결하고자 한다.  오버레이 파일 시스템 (Overlay Filesystem)그래서 이러한 중복 문제를 해결하기 위해 다음과 같은 생각을 한다. 이를 오버레이 파일시스템이라고 한다.- 여러 이미지 레이어를 하나로 마운트- Lower 레이어(이미지 레이어)는 Re.. 2024. 9. 1.
컨테이너 만들기 2) pivot_root를 활용한 네임스페이스 격리 chroot의 문제점앞서 chroot를 통해서 컨테이너의 격리를 학습할 수 있었다. 그런데 chroot의 단점은 탈옥이 가능하다는 것이다. 탈옥 코드#include #include int main(void){ mkdir(".out", 0755); chroot(".out"); chdir("../../../../../"); chroot("."); return execl("/bin/sh", "-i", NULL);} 해당 코드를 간단하게 분석하면 일단 현재 디렉터리에 .out 폴더를 755권한으로 생성한다. 그리고 프로세스의 루트 디렉터리를 .out 디렉터리로 변경해, 프로세스가 그 디렉터리 안에서만 파일 시스템에 접근할 수 있도록 한다. 새로운 루트 디렉터리 내에서 가능한 최상위 디렉터리로 이동한다. 현재 디.. 2024. 9. 1.
컨테이너 만들기 1) 컨테이너의 기원 - chroot (컨테이너와 격리) 가시다 님의 KANS 스터디 내용 중 컨테이너의 격리 부분을 잘 설명한 유명한 동영상 '이게 돼요? 도커 없이 컨테이너 만들기' 영상을 정리한 내용을 공유합니다. 해당 내용은 동영상 https://www.youtube.com/watch?v=mSD88FuST80 에 매우 잘 나와있으며,https://github.com/sam0kim/container-internal 깃허브에서 자료를 다운받으실 수 있습니다.   컨테이너의 기원 (일종의 최초 격리)컨테이너의 기원은 1979년 chroot로 보는 견해가 많다.서버에는 다양한 유저들이 접속하므로 악의적인 사용자(해커)도 접근할 수가 있다. 따라서 이를 막기 위해 사용자 프로세스를 가두는 방법을 고안했다. chroot는 루트 디렉토리 밖으로는 프로세스가 나갈 수.. 2024. 9. 1.
[한빛미디어] <혼자 해도 프로처럼 잘 만드는 굿즈 제작 비법>리뷰 총평- 책의 난이도 : ★☆☆☆☆- 추천 별점     : ★★★★★- 추천 독자     :  나만의 굿즈를 제작해보고 싶은사람- 지은이         :  빨간고래 지음- 출판사         : 한빛미디어- 예제소스      : https://www.hanbit.co.kr/store/books/look.php?p_code=B8109032364  누구나 한 번 쯤은 굿즈 제작에 관심이 생겨본적 있으시죠?저 또한 그랬는데 이번에 굿즈 제작에 대해서 총망라한 책이 나와 소개해 드립니다. 이 책에서 만들어 보는 것들은 엽서, 원형 스티커, 씰 스티커, 마스킹테이프, 우표컷 마스킹 테이프, 떡메모지, 폰 케이스, 아크릴 키링, 투명포토카드 이렇게 무려 9개의 굿즈를 만들어볼 수 있습니다. 책의 특징1. 깔끔한 .. 2024. 7. 22.
[한빛미디어] <실전 레디스> 리뷰 총평- 책의 난이도 : ★★★★☆- 추천 별점     : ★★★★★- 추천 독자     :  레디스를 사용 중이거나 도입을 고려하고 있는 사람- 지은이         : 하야시 쇼고 지음 / 서대원 옮김 / 정경석 감수- 출판사          : 한빛미디어 우리가 인메모리 DB로는 레디스를 많이 사용하게 됩니다.AWS에서는 Elasticache 서비스에서 레디스를 접할 수 있습니다.이 책은 레디스의 A부터 Z까지 운영에 대한 가이드와 인사이트를 얻을 수 있는 책으로 추천합니다.국내 저자가 쓴 것으로는 도 같이 참고하시는 것도 좋을 것 같네요. 각 챕터별 내용1부 기초1장 레디스의 시작에서는 레디스의 특징이나 개요에 대해서 알아봅니다.2장 자료형과 기능에서는 레디스에서 사용하는 자료형의 특징과 유스케이스.. 2024. 6. 9.