개발, 인프라
[Python] Iterable, Iterator, Generator, yield. [i for i in a]와 (i for i in a)가 다른 이유
스포일러: Iterable a에 대해 [i for i in a]은 list를 반환하고 (i for i in a)는 Generator를 반환한다. 무엇이 다를까? !주의: Iterable과 Iterator를 잘 구분하여 읽어야 한다. Iterable Iterable는 반복적으로 포함된 요소를 반환할 수 있는 객체이며 list, dict, set, str, bytes, tuple 등이 예시이다. Python에서 Iteratable은 __iter__ method를 포함하는 객체이다. 객체나 인스턴스가 가진 method와 attribute를 출력해주는 dir 함수를 통해 Iterable임을 확인할 수 있다. >>> dir(list) ['__add__', '__class__', '__contains__', '__..
[kubernetes] kubectl --record, kubectl rollout undo
--record kubectl 명령어 뒤에 --record나 --record=true를 붙이면 나중에 kubectl rollout history {target deployment}을 했을 때 해당 명령어가 annotation으로 기록되어 있다. kubectl describe deployment ...로도 이 기록들을 확인할 수 있다. rollout undo deployment에 적용한 update를 rollback하는 명령어다. kubectl rollout undo {target deployment}을 하면 최근 업데이트 직전로 deployment가 수정된다. undo를 하면 kubectl rollout history {target deployment}에서 예전 revision이 최신 revision으로..
![[kubernetes] Udemy "Kubernetes for the Absolute Beginners - Hands-on" 강의 리뷰](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcdz3lO%2FbtrsFt9p1je%2FXMcveAnf0aC5nk9nL6Rek1%2Fimg.png)
[kubernetes] Udemy "Kubernetes for the Absolute Beginners - Hands-on" 강의 리뷰
강의 내용 요약 강의가 끝난 시점에서 기억나는 내용을 정리해보자면... 단순히 말해 Kubernetes는 Orchestration 프로그램이다. 각각의 기능을 갖고 있는 Pod들을 wrapping하여 관리하고 연결함으로서 상호작용할 수 있도록 한다. https://kubernetes.io/ko Kubernetes K8s를 어디서나 실행 쿠버네티스는 오픈소스로서 온-프레미스, 하이브리드, 또는 퍼블릭 클라우드 인프라스트럭처를 활용하는 데 자유를 제공하며, 워크로드를 사용자에게 관건이 되는 곳으로 kubernetes.io 예를 들어 Web application을 만든다고 하면 웹 페이지를 띄우는 기능도 필요하고 이와 상호작용할 수 있는 redis, db 등도 필요할 수 있다. 이 때 각 기능들을 Pod으로 ..
[kubernetes] kubectl create vs apply ... and edit
요약하자면 kubectl create와 kubectl apply는 모두 생성을 위해 사용될 수 있다. 하지만 생성하고자하는 대상이 이미 존재할 때 kubectl create는 에러를 발생시키며 kubectl apply는 이미 존재하는 대상을 apply 하는 내용으로 수정시킨다. 자세한 내용은 아래 내용을 참고해보자 https://stackoverflow.com/questions/47369351/kubectl-apply-vs-kubectl-create kubectl apply vs kubectl create? What I understood by the documentation is that: kubectl create Creates a new k8s resource in the cluster kubect..