
Python 함수 초기값 주의하기
메모리가 점점 늘어나는 memory leak은 함수 파라미터 초기값 설정으로부터 발생할 수도 있다 발단 프로세스를 실행하고 시간이 지나면 지날수록 점점 처리 시간이 늘어났다. 어딘가 메모리가 새고 있고 어떤 변수에 값이 쌓이고 있다고 판단했다. 원인 구간을 좁혀나가며 디버깅해 찾았다. 정답은 함수 파라미터 초기값 def arr_test(num:...
메모리가 점점 늘어나는 memory leak은 함수 파라미터 초기값 설정으로부터 발생할 수도 있다 발단 프로세스를 실행하고 시간이 지나면 지날수록 점점 처리 시간이 늘어났다. 어딘가 메모리가 새고 있고 어떤 변수에 값이 쌓이고 있다고 판단했다. 원인 구간을 좁혀나가며 디버깅해 찾았다. 정답은 함수 파라미터 초기값 def arr_test(num:...
실시간 RTSP 스트리밍을 처리하는 데 있어 1-2초의 지연을 용인할 수 있게 하려면 버퍼를 둘 수 있다. 그리고 그때, Ring Buffer를 활용하면 합리적으로 실시간 요청을 처리할 수 있다. 정의 원형 버퍼(Ring buffer or Circular buffer)는 고정된 크기의 버퍼를 양 끝이 연결된 것처럼 사용할 수 있게 해주는 자료구조이...
EC2 프리티어 t2 인스턴스에서 airflow를 활용한 개인프로젝트를 진행하는데 메모리 문제로 죽는 현상이 있었다. 이를 swap memory로 해결한 경험이다. 발단 나의 귀여운 인스턴스 하나가 있다. 사양은 다음과 같다. vCPU = 1 RAM(GiB) = 1 너무 작아서 그런지 실행시 인스턴스가 계속 먹통이 됐다. 인스턴...
cka 정리6 234: Design a Kubernetes Cluster k8s 클러스터 설계에 대해 다룬다. 설계하기 전 다음과 같은 고민이 필요하다 목적 교육 개발 & 테스트 PROD 애플리케이션 호스트 환경 클라우드 혹은 온프레미스 워크로드의 양 얼...
cka 정리5 165: Service Accounts k8s의 서비스 계정에 대하여 다룬다. 서비스 계정은 authentication, authorization, role-based access controll를 비롯한 k8s의 다른 보안과 연결된다. 다소 CKAD 과정에 속하지만 얕게 소개하겠다. k8s에는 사용자 계정과 서비스 계정 두 유형의...
CKA 정리4 144: TLS in Kubernetes TLS 인증서로 k8s 클러스터를 보호하는 방법을 다룬다. 서버가 public & private key를 이용해서 ssh 연결을 보호하는 방법을 배웠는데 이를 server certificate라고 한다. CA(Certificate Authority)에서 서버 인증서에 서명하는 데 사용하...
CKA 정리3 cka3 120: OS Upgrade base S/W를 업데이트하거나 보안패치등을 클러스터에 적용하는 등의 유지보수 목적으로 일부 노드를 중단하는 시나리오를 생각해보고 이 때 사용할 수 있는 옵션들을 알아보자 앱을 여러 노드와 파드들로 배포하였다. 특정 노드가 다운된 상황을 가정하자. 이 때, 파드를 배포한 방법에 따라 사용자는 ...
CKA 정리2 64: Taints and Tolerations vs Node Affinity 파랑 빨강 녹색의 색으로 각각 3개의 노드와 파드가 있다고 하자. 목표는 색깔에 맞는 노드에 파드를 배치하는 것 노드에 다른 색의 파드가 배치되거나 파드가 다른 색의 노드에 배치되는 것을 원하지 않는다. Taint and Toleration으로...
10.13(일) 쿠버네티스 자격증 시험에 응시했고 다행히도 합격했다 08.21에 접수했으니 한달 반정도 준비한 것 같다. 출퇴근시간과 점심 시간을 주로 많이 활용했다. 뭄샤드씨의 강의가 생각보다 넓은 범위를 다루고 있어서 오랜만에 네트워크, 보안, 클라우드 플랫폼 운용 등 상기시키고 그 위에서 동작하는 k8s를 공부할 수 있었다. 시험은 시나리...
CKA 정리1 위 방대한 강의를 듣고 정리한 내용을 러프하게 적어놓는다. (강의 link) 나의 CKA 공부는 “공부하는 무니”님의 블로그를 기반으로 했다. (블로그 link) docker & containerd 쿠버네티스는 CRI(container runtime interface)를 통해 어떤 공급업체든 OCI(open contai...