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

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

k8s 37

Airflow) docker-compose로 dockerOperator 실행하기

급하게 회사 업무로 airflow를 사용할 일이 있었는데docker-compose에서 dockerOperator를 사용한 경험입니다# 상황airflow 3년 전에 너가 세팅했지? 지금 바로 해줘 Airflow야 여러 버전별로 여러번 설치해봤으니까 알겠다고 대답했습니다. 생각없이 그냥 작업하다가 삽질을 2번이나 했습니다.# 삽질1: k8s 버전 생각 안하고 기존 소스로 설치하기2년 전에 세팅해둔 gitlab repo(airflow helm 2.3.0)가 있길래,회사 on-prem 쿠버(1.30) 에 실행해봤어요.  그런데 역시나 버전이 에러가 났습니다.(멍청한 나)- 현상: scheduler가 죽은 다음 살아나지를 않음 [원인]혹시나가 역시나. 버전이 안맞음gitlab repo가 2년 전 세팅한- gitl..

Data/Airflow 2024.10.27

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

Jupyterhub) k8s 1.27에서 helm 에러 수정_bug

쿠버 버전을 업그레이드했다가, 에러가 발생했어요. 공식 github에서도 2일전에 bug라는 issue가 등록되었더라고요 요약 1. k8s 1.27에서 pod spawning이 안됨 2. 공식 인정 버그였음 3. image를 변경하고, deprecated된 api를 수정함 환경 - helm chart 3.0.0 - k8s v1.27.0 (기존에는 1.24) 에러 v1beta1.CSIStorageCapacity 관련 에러 - Failed to watch *v1beta1.CSIStorageCapacity: failed to list *v1beta1.CSIStorageCapacity: W0530 17:41:37.219051 1 reflector.go:324] k8s.io/client-go/informers/f..

Data/Jupyterhub 2023.06.11

superset) trino 연결해서 그래프 그리기

superset에서는 pip install만 하면 db connection을 만들 수 있어요.그런데 어떻게 추가하는지 처음에는 당황스러울 수 있어요 예상 독자는 아래와 같아요.superset에 connection 맺으려고, dockefile 예시 찾는 분Superset 이 무엇인지 설명하는 이전 글은 아래 링크에 있어요https://mightytedkim.tistory.com/191 Supserset) 슈퍼셋 들어보셧나요? 사용 후기 듣고 가세요! (filter 조건 위치 변경해서 full scan 방지)요즘 '빅데이터 지탱하는 기술' 보고 있는데, superset이 나와서 정리해봣어요예상 독자는 아래와 같아요 - superset 사용하시려는 분 - 기본 구조를 아시고 싶으신 분 - filter를 whe..

Data/Superset 2023.04.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

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

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

기타/K8S 2022.12.29

mc) mc cp 사용시 인증서 오류날 때_s3v2,s3v4

mc를 통해서 object storage의 데이터를 A cluster에서 B cluster로 옮기려고 했어요 참고로 저는 온프렘 k8s rook-ceph를 사용하고 있어요 alias 등록하고 목록 조회는 되는데, 다른 작업이 안되더라고요 $ mc alias ls ceph-test URL : http://192.16.172.56:30071 AccessKey : access-key SecretKey : secret-key API : S3v4 Path : dns ceph-vm URL : http://172.17.172.11:30071 AccessKey : access-key SecretKey : secret-key API : s3v4 Path : auto $ mc ls ceph-test/ [2022-10-12..

기타/K8S 2022.12.23

글또) 7기 다짐글(2022.05 ~ 2022.11)_airflow

벌써 3번째 다짐글이네요 이 포스팅의 독자는 아래와 같아요 글또 가입을 고민하시는 분 글또 7기를 같은 그룹 분들 중 제가 궁금하신 분 글또 바이럴에 도움이 되기를 바라면서 아래 3가지 내용을 준비했어요 글또를 통해 얻게된 좋은 습관 5,6기에 작성했던 글 7기에 작성하게될 글 1) 글또를 통해 얻게된 좋은 습관 글또 덕분에 여러 습관을 얻게 되었어요 주기적으로 글쓰는 습관 피드백 받을 걸 생각하고 글쓰는 습관 어떻게 효과적으로 피드백을 줄지 생각하는 습관 아직도 메모처럼 블로그에 글을 작성하고 있지만, 매 기수마다 발전하는 저를 볼 수 있어요. 그리고 어떤 글을 썼는지 목차를 보며 그 동안 어떤 기술에 제가 관심이 있엇는지 볼 수 있어 좋아요 2) 5,6기에 작성했던 글 21년에는 elk, k8s를 공..

Data/Airflow 2022.07.10

Slipp) k8s 스터디 후기_21기

(후기) 코로나 기간이라 온라인으로만 진행된 건 조금 아쉬웠지만 스터디 내용이 실무에 많이 도움 되었어요 :) 요약 기간: 2021.08.10 ~ 2021.11.16 (7회) 주제: 쿠버네티스 시작하기 목표: 쿠버네티스의 기본 구조 학습 방식: '15단계로 배우는 도커와 쿠버네티스' 함께 읽기 https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=252444358 15단계로 배우는 도커와 쿠버네티스 컨테이너 기술에 처음 입문하는 독자도 체계적으로 실력을 쌓아갈 수 있도록 도커부터 시작하여 쿠버네티스의 전반적인 기능을 기초부터 단계별로 학습할 수 있도록 구성되어 있다. 독자는 이 www.aladin.co.kr 내용 Slipp) K8S 스터디1주차_개념 잡기 https:..

커뮤니티/slipp 2022.07.09

K8s) host명으로 내부 데이터 접근하기_spark,boto3,k8s

IP로 데이터에 접근하다보니, 불안해서 host명으로 수정했어요 k8s에서 작업하시는 분들께 도움이 되었으면 합니다 :) 요약 문제 : IP로 데이터 접근하니, 보안 리스크가 생김 상황 : spark image, jupyterhub, airflow 에 적용가능함 조치 : IP를 host명으로 대체함 결론 : 보안 리스크 줄이고, cluster 관리가 편해짐 설명 1. 문제 data에 IP로 접근해서 생길 수 있는 보안 이슈 발견 k8s cluster를 여러개 관리하다보니까, IP가 이제 꼬이기 시작했어요. 보안 이슈도 있었지만, 곧 신규 cluster 구축이 예정되어있어서 미리 변경하고 싶었어요 제가 편해야 시스템도 안정적으로 변하니까요ㅎ 2. 상황 일단 3가지 먼저, spark image/ jupyte..

기타/K8S 2022.07.07