'데이터 엔지니어'로 성장하기

정리하는 걸 좋아하고, 남이 읽으면 더 좋아함

기타/K8S 36

K8S) 망가진 클러스터 심폐소생술 하기_disk,memory부족

평화로운 오후 갑자기, 회사 K8S가 이상하다는 연락이 옵니다회사 서버실에 있는 쿠버네티스나는 1년 동안 들어가본적이 없는 쿠버네티스하지만 내가 살려야하는 쿠버네티스 돌이켜보면 별거 없지만, 클러스터 되살린 과정을 적어보려고 합니다. 예상 독자는 아래와 같습니다1. k8s 리소스 정리가 필요한 분2. worker disk pressure, memory 부족이 발생하는 분3. k8s 이슈 발생시, 확인환경은 아래와 같습니다.1. 온프렘2. master 3, worker 33. k8s 1.30 /// ubuntu 22.04 (스포) 를 원하시면 아래 [더 보기]를 눌러주세요더보기[상황 파악]  1. 무슨 이유에서 인지, ceph에서 문제 발생  (ceph core 덤프 파일이 /var/lib/rook-cep..

기타/K8S 2024.09.30

k8s) cka 자격증 후기_칠지말지 고민될 때 보면 좋을 내용

업무에 쿠버네티스를 많이 사용하고 있는데, 알고 있는 것을 점검하고자 자격증을 공부했어요 인강은 작년에 Udemy를 들엇지만, 1년짜리 유효기간이 시험이라 끝까지 미루다가 얼마전에 시험을 쳤어요 ㅎ 예상 독자는 다음과 같습니다. CKA 시험을 치려고 고민하시는 분 읽고 얻으실 수 있는건 아래와 같아요 시험을 쳐야할지 말아야지 결정에 필요한 정보 1. 쿠버네티스 자격증이란? Linux foundation에서 제공하는 여러 자격들 중 하나에요 CKAD, CKA, CKS 등이 있어요 2. 공부 전 알아야하는 내용 시험을 치는 이유 ( 지식 습득 > 취업 스펙 ) 많은 사람들이 UDEMY에서 인강 듣고, 그냥 치면 딸 수 있는 시험이라고 해요. 그래서 쉬워 보이는데 생각보다 준비기간이 오래 걸립니다. 쿠버네티..

기타/K8S 2024.02.04

Kubernetes) Container안에서, Image 빌드 가능한가요? (Part 2: Kaniko)

지난 포스팅에서는 Docker in Docker를 이용해서 image를 빌드했어요. 그런데 굳이 Image 빌드만 하면되는데 docker를 사용해야할까요? 예상 독자는 아래와 같습니다. Image 빌드에 굳이 Docker를 쓰고 싶지 않으신 분 보안에 취약한 Docker in Docker를 사용하고 싶지 않으신 분 Kaniko가 궁금하신 분 목차 내용 1. Kaniko란? 홈페이지: https://github.com/GoogleContainerTools/kaniko 한줄 요약: kaniko is a tool to build container images from a Dockerfile, inside a container or Kubernetes cluster. image: gcr.io/kaniko-pro..

기타/K8S 2023.09.30

Kubernetes) Container안에서, Image 빌드 가능한가요? (Part 1: docker in docker)

항상 Docker build는 Jenkins나 Git Action을 사용해왔어요. 그런데 권한 이슈 때문에 이걸 사용하지 못하는 상황을 마주쳤습니다. Docker In Docker로 이 상황을 어떻게 우회했는지 정리해보았습니다 예상 독자는 아래와 같습니다. Docker In Docker 가 궁금하신 분 Docker Out of Docker를 사용 못하시는 분 K8S 엔진으로 cri-o를 사용하시는 분 목차 상황 설명 문제 해결 참고 내용 상황 설명 Server의 Docker 사용이 안됨 (보안상의 이유로) Docker out of Docker는 docker.sock 권한 이슈로 사용 못함 Image는 Build하고 repository에 Push 해야함 Nuclio의 nuctl의 경우 default가 do..

기타/K8S 2023.09.23

kubernetes) k8s dashboard limited acess 설정하기_readonly

k8s dashboard를 제공하기는 해야하는데, 읽기 권한만 부여하고 싶을 때가 있어요. 예를 들어, spark on k8s 환경의 경우 분석가 분들이 pod의 memory/cpu 사용량을 봐야할 때가 있겠네요. 사용량이나 로그를 봐야지 executor와 memory를 늘릴지 말지 판단할 수 있기 때문이에요. 제가 참고한 코드는 fabianlee의 블로그에요 https://fabianlee.org/2022/08/05/kubernetes-accessing-the-kubernetes-dashboard-with-least-privilege/ Kubernetes: accessing the Kubernetes Dashboard with least privilege | Fabian Lee : Software En..

기타/K8S 2023.04.23

k8s) worker 재시작했을 때 not ready 인 경우

어쩔때는 잘 올라오는데 어쩔때는 not ready고 쿠버는 참 재미진 것 같아요.. 매번 믿지만, 가끔 뒤통수 맞아서 비슷한 사례가 있을 때마다 여기에 추가하려고요 (대단한건 없고 메모용입니다) server 의 경우 서버에서는 대부분의 문제가 kubelet, docker(containerd)가 실행되지 않아서 생기더라고요 그래서 아래 명령어들을 확인합니다. systemctl status kubelet systemctl status docker #systemctl status containerd 예시 [root@k8sworker3 ~]# systemctl status kubelet ● kubelet.service - kubelet: The Kubernetes Node Agent Loaded: loaded ..

기타/K8S 2023.03.09

K8S) pod 내부에서 외부 DNS 못 찾을 때 우회법_hostAlias,coredns

쿠버네스티는 설치할 때마다 새로워요. hw가 문제일 때도 있고, kernel 버전이 안 맞을 때도 있죠 하지만 대부분의 절망 포인트는 네트워크 더라고요... pod안에서 외부 dns 접근 못하던 문제를 어떻게 우회해서 해결했는지 정리했습니다 예상 독자는 다음과 같아요 온프렘 환경에서 고군분투 쿠버를 설치하시는 분들 네트워크 잘 모르는데 쿠버 설치하시는 분들 저를 불쌍히 여기실 수 있는 분들 문제: pod 안에서 dns 를 찾지 못함 이번에는 새로운 네트워크 망에 k8s cluster를 설치하는 작업을 했어요 그런데 이상하게 서버 몇대가, 회사 DNS에 접근을 잘 못하더라고요. 12대 중 2대가 접근이 되지 않아서 /etc/hosts에 특정 host를 명시해줬어요 불안한 마음에 k8s 설치하고 busybo..

기타/K8S 2023.02.26

K8S) 인증서 갱신하기

온프렘 쿠버 세팅하고 1년 정도 지나니까 인증서 갱신 문제가 발생하더라고요 문제가 발생하면 먼저 인증서 상태를 확인해줍니다. $ kubeadm certs check-expiration [check-expiration] Reading configuration from the cluster... [check-expiration] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -o yaml' [check-expiration] Error reading configuration from the Cluster. Falling back to default configuration CERTIFICATE EX..

기타/K8S 2023.02.26

mc)mc cp와 mc mirror 차이

최근에 대용량 object stroage 파일 수십만개를 복사할 일이 생겼는데 그 때 mc cp와 mc mirror를 들여다 봤어요 + aws cli도 좋지만, mc(minio client)는 설치가 필요없이 압축만 풀면되는 agent 파일이어서 좋아요. (서버에 영향을 최소한으로 줄 수 있어서) 예상 독자 - mc(minio client)가 궁금한 분 - mc cp와 mc mirror의 차이가 궁금한 분 목차 1. mc cp는 뭐지 2. mc mirror는 뭐지 3. 두개의 차이점은 뭐지 4. 무엇을 적용했는지 1. mc cp는 뭐지 aws cli의 cp와 동일한 친구에요 단순히 복사하는 명령어로, 속도가 빠르고 단순하다는 장점이 있어요 하지만 boto3보다 안정적이라는거지, 수만개의 object를 이..

기타/K8S 2023.01.09

Kubernetes) 인프라팀의 network 초기화로 비상걸린썰_온프렘,ip_forward

22년 연말에 쿠버네티스 장애나서 혼자 야근한 썰이에요 결론부터 말하면, 알 수 없는 이유로 네트워크 설정값이 초기화되었는데 상상도 못햇던 일이라 원인을 찾는데 좀 오래 걸렷어요 ”장애 인지 -> 원인 파악 -> 해결“의 흐름으로 정리해봤습니다ㅎ 요약 - k8s pod 내부에서 외부 domain 접근 못함 - 인프라팀 서버 작업 중, ip_forward 설정값이 초기화됨 예상 독자 - coredns 관련 에러가 나는 분들 목차 장애 인지 원인 파악 문제 해결 후기 1. 장애 인지 서버 재시작 후, K8S Airflow Job 실패 인프라팀이 ‘펌웨어 업그레이드`한다고 서버를 재시작했어요. 재시작하고 나니, Airflow 장애가 발생하며 메신저에 불이 났어요 심호흡을 하고, 상황 파악부터 시작했습니다. A..

기타/K8S 2022.12.29