Cloud Engineering Log
-
예를 들어, Pod의 Root Directory에 Pod Running과 동시에 Requirements.txt를 둬야할 때가 있다. 나는 지금 Longhorn Storage + NFS를 기반으로 컨테이너 파일시스템을 관리하고 있는데, (find_pod는 그냥 내가 만든 쿠베용 쉘스크립트 커맨드라인 함수 중 하나다.) 무튼 저걸 실행하게 되면, sh: 1: cannot create /requirements.txt: Permission denied 에러가 발생한다. 왜냐하면 저 컨테이너 이미지는 airflow인데, ls -A bin boot data data_tmp dev .dockerenv entrypoint.sh etc home lib lib64 media mnt opt proc requirements...
Kubernetes Pod의 Root Directory("/")에서 작업이 필요할 때예를 들어, Pod의 Root Directory에 Pod Running과 동시에 Requirements.txt를 둬야할 때가 있다. 나는 지금 Longhorn Storage + NFS를 기반으로 컨테이너 파일시스템을 관리하고 있는데, (find_pod는 그냥 내가 만든 쿠베용 쉘스크립트 커맨드라인 함수 중 하나다.) 무튼 저걸 실행하게 되면, sh: 1: cannot create /requirements.txt: Permission denied 에러가 발생한다. 왜냐하면 저 컨테이너 이미지는 airflow인데, ls -A bin boot data data_tmp dev .dockerenv entrypoint.sh etc home lib lib64 media mnt opt proc requirements...
2022.05.18 -
K8S Project를 올리는 중에, 해당 메세지를 만났다. 쿠버네티스에서 PVC 축소는 지원하지 않는다. 축소하려면 축소된 PVC를 추가한 후, 기존 PVC를 삭제할 수 밖에....... 그리고 저 메세지는 축소할수 없응게 이 이름의 PVC가 예전에 했던 용량보단 크게 혀라~ 근데 저 메세지가 떴다? 생각해보니 이전에 프로젝트를 계속 지웠다 깔았다 했던 거 같다. 그래서 kubectl get pvc -A로 확인해보니 역시나. 있었다. 해당 PVC를 깔꼬미하게 제거 후, 다시 올리면 만나지 않을 메세지다.
<삽질금지 한입지식> The PersistentVolumeClaim "<SOMETHING>" is invalid: spec.resources.requests.storage: Forbidden: field can not be less than previous valueK8S Project를 올리는 중에, 해당 메세지를 만났다. 쿠버네티스에서 PVC 축소는 지원하지 않는다. 축소하려면 축소된 PVC를 추가한 후, 기존 PVC를 삭제할 수 밖에....... 그리고 저 메세지는 축소할수 없응게 이 이름의 PVC가 예전에 했던 용량보단 크게 혀라~ 근데 저 메세지가 떴다? 생각해보니 이전에 프로젝트를 계속 지웠다 깔았다 했던 거 같다. 그래서 kubectl get pvc -A로 확인해보니 역시나. 있었다. 해당 PVC를 깔꼬미하게 제거 후, 다시 올리면 만나지 않을 메세지다.
2022.05.16 -
지금 Git-Sync 컨테이너를 입혀서, Kubernetes Cluster의 PVC 상태를 Gitlab private project랑 동기화하는 작업을 수행하고 있다. private gitlab에 접속하는 방법으로 ssh, id/pw가 있는데, 간편하게 수행하고 싶어서 id/pw를 kubernetes Secret객체로 등록하고 사용하려고 했다. echo "" | base64 요렇게 쳐서 나온 인코딩 값을 secret에 넣으라고 하길래.... 했는데 계속 ID랑 PW를 모두 인식하지 못하는 거다. 그래서 command를 먹여서 secret값이 어떻게 출력되나 봤더니, echo를 통해서 입력되는 \n값까지 secret으로 들어가서 안 되는 거였다. 방지하기 위해서는 echo -n "" | base64 로 뽑..
Kubernetes Secret Object 이용 시 주의사항지금 Git-Sync 컨테이너를 입혀서, Kubernetes Cluster의 PVC 상태를 Gitlab private project랑 동기화하는 작업을 수행하고 있다. private gitlab에 접속하는 방법으로 ssh, id/pw가 있는데, 간편하게 수행하고 싶어서 id/pw를 kubernetes Secret객체로 등록하고 사용하려고 했다. echo "" | base64 요렇게 쳐서 나온 인코딩 값을 secret에 넣으라고 하길래.... 했는데 계속 ID랑 PW를 모두 인식하지 못하는 거다. 그래서 command를 먹여서 secret값이 어떻게 출력되나 봤더니, echo를 통해서 입력되는 \n값까지 secret으로 들어가서 안 되는 거였다. 방지하기 위해서는 echo -n "" | base64 로 뽑..
2022.05.10 -
Kubernetes는 Version마다 지원하는 기능이 바뀐다. https://kubernetes.io/ko/docs/reference/command-line-tools-reference/feature-gates/ 기능 게이트 이 페이지에는 관리자가 다른 쿠버네티스 컴포넌트에서 지정할 수 있는 다양한 기능 게이트에 대한 개요가 포함되어 있다. 기능의 단계(stage)에 대한 설명은 기능 단계를 참고한다. 개요 기능 게 kubernetes.io 위 Official Doc을 보면, [기능] [디폴트] [단계] [도입] [종료] 순의 5칼럼 테이블이 존재한다. 위 2 행은, APIListChunking이라는 알파 Feature가 1.8버전에 도입되었고, 1.8버전에 종료되었다가 똑같은 이름의 베타 Featur..
Rancher에서 Kubernetes의 Feature Gate를 활성화하는 방법Kubernetes는 Version마다 지원하는 기능이 바뀐다. https://kubernetes.io/ko/docs/reference/command-line-tools-reference/feature-gates/ 기능 게이트 이 페이지에는 관리자가 다른 쿠버네티스 컴포넌트에서 지정할 수 있는 다양한 기능 게이트에 대한 개요가 포함되어 있다. 기능의 단계(stage)에 대한 설명은 기능 단계를 참고한다. 개요 기능 게 kubernetes.io 위 Official Doc을 보면, [기능] [디폴트] [단계] [도입] [종료] 순의 5칼럼 테이블이 존재한다. 위 2 행은, APIListChunking이라는 알파 Feature가 1.8버전에 도입되었고, 1.8버전에 종료되었다가 똑같은 이름의 베타 Featur..
2022.05.10