분류 전체보기 719

인프라 작업을 할 때 제어할 수 없는 영역

인프라 작업을 할 때 제어할 수 없는 영역이 있습니다. 바로, 나에게 설정권한이 없는 영역입니다. 그리고 내가 그 영역에 대한 지식이 없다면 매우 작업이 고단합니다. 최근에 제가 겪은 사례를 제어할 수 없는 2가지 사례를 공유드리려고 합니다. 첫 번째 사례는 도메인 설정작업입니다. 최근 작업한 도메인들 중 일부는 저에게 설정권한이 없었습니다. 그래서 신청했어야 하는데 누구한테 신청해야할지도 모르는 상황이고 무엇을 신청해야할지도 몰랐습니다. 우여곡절 끝네 신청했지만, 처음에 제가 의도한대로 동작을 안해서 설정 수정 요청을 해야했습니다. 요청한 작업이 끝날 때까지 기다렸고 오늘 다시 작업을 하려고 했는데... 또 제가 의도한대로 동작을 안해서 이번 주 안에 또 신청할 예정입니다. 😂 두 번째 사례는 ..

회고모음 2024.09.04

chroot - 컨테이너는 어떻게 파일을 실행할까?

이 글을 이해하기 위해 mount namespace이해가 필요합니다. 저의 이전 글을 참고해주세요. 1. 최소 파일을 갖는 컨테이너컨테이너의 장점은 애플리케이션 실행에 필요한 최소 파일과 라이브러리를 관리합니다. 예를 들어 자바 8을 실행하는 컨테이너는 자바8실행파일과 자바8에 관련된 라이브러리가 있습니다. 자바11을 실행하는 컨테이너도 자바11실행파일과 자바11에 관련된 라이브러리가 있습니다. 서버에서 자바 8과 자바11을 실행한다면, 자바8과 11 실행파일 모두 가지고 있어야되고 관련 라이브러리를 설치해야 합니다. 최악의 경우 라이브러리 충돌로 인해 설치가 안되는 슬픈상황이 발생합니다. 2. 컨테이너가 개별적으로 최소 파일을 가질 수 있는 이유이전 글에서 설명한 것처럼 컨테이너는mount namesp..

linux의 mount namespace

1. mount namespace이란?mount namespace는 파일 시스템 마운트(mount)와 언마운트(umount) 작업을 격리할 수 있는 전용 공간을 생성합니다. 한 namespace에서 수행된 mount와 umount 작업은 다른 namespace에 영향을 미치지 않습니다. 예를 들어, A mount namespace에서 생성된 /test 마운트 포인트는 B mount namespace에서는 존재하지 않습니다. 왜냐하면 이 두 namespace는 서로 다른 파일 시스템 마운트 환경을 사용하기 때문입니다. 2. 컨테이너 관점에서 바라보는 mount namespace 역할컨테이너에서 mount namespace의 역할은 각 컨테이너가 자기만의 파일 시스템 환경을 가지도록 하는 것입니다. mou..

맥북에서 vagrant로 vmware fusion 실행시 No such file or directory: vagrant-utility.client.crt 에러

제일 처음 맥북에서 vagrant로 vmware fusion 가상머신을 생성하면 인증서를 찾을 수 없다는 에러가 발생합니다.Path: /opt/vagrant-vmware-desktop/certificates/vagrant-utility.client.crt Error: No such file or directory @ rb_sysopen - /opt/vagrant-vmware-desktop/certificates/vagrant-utility.client.crt  인증서는 vagrant vmware utility를 설치하면 자동으로 생성됩니다. vagrant vmware utility는 공식홈페이지에서 바이너리를 다운로드 받아 설치합니다.- vagrant 공식홈페이지: https://developer.h..

EKS 애드온의 버전별로 호환되는 EKS 버전을 확인하는 스크립트

AWS CLI를 사용해서 EKS애드온이 어떤 EKS에서 사용가능한지 확인할 수 있습니다.$ ADDON_NAME=aws-ebs-csi-driver$ aws eks describe-addon-versions --addon-name $ADDON_NAME | jq -r ' .addons[] | .addonVersions[] | select(.architecture[] | index("amd64")) | [.addonVersion, (.compatibilities[] | .clusterVersion), (.compatibilities[] | .defaultVersion)] | @tsv' 아래는 EBS CSI driver 애드온 버전별로 호환되는 EKS버전을 조회했습니다.

[django] urls.py에서 '/' url패턴을 못찾는 에러 해결방법

1. 코드urls.py에서 '/'로 방문할 경우 memo_list라는 view를 호출하도록 설정했습니다.urlpatterns = [ path('/', views.memo_list, name='memo_list'),]  2. 발생하는 문제'http://localhost/'로 접속하면 404 Page not found에러가 발생합니다.   3. 해결방법django에서는 '/'를 지정하려면 빈값(empty string)으로 설정해야 합니다.urlpatterns = [ # empty string으로 수정 path('', views.memo_list, name='memo_list'),] empty string으로 설정하는 방법은 django 공식문서에 설명되어 있습니다.