본문 바로가기

k8s8

Kubernetes 스토리지 구조 Kubernetes에서는 영속적인 저장 공간을 저장하는 방법으로 Persistent Volume을 사용한다. Persistent Volume은 StorageClass를 속성으로 가지게 된다. Pod는 Persistent Volume(pv)과 Persistent Volume Claim(pvc)으로 1:n 관계로 매핑되어 사용한다. 정리하자면 다음과 같다. 하나의 StorageClass로 다양한 PV를 만들 수 있다. PV - PVC - Pod의 관계는 1:1 대응으로, 하나의 PV에 하나의 PVC, 하나의 PVC에 하나의 Pod가 매핑되는 관계이다. StorageClass https://kubernetes.io/ko/docs/concepts/storage/storage-classes/ 스토리지 클래스 이 .. 2023. 3. 26.
[TIL] sed - 텍스트 스트림 에디터 요즘 쿠버네티스를 이용하면서 yaml 파일을 다룰 일이 많은데, yaml 파일에 값이 동적으로 변경되어야 하는 경우도 존재한다. 그럴 경우 기존 yaml에서 필요한 부분만 값을 세팅한 후 kubectl apply하는 방법이 유용하게 사용된다. 실제로 내 경우에는 minio를 설치할 때 kubectl krew install minio를 통해 minio를 설치하고, kubectl minio tenant create xxx 를 통해 실제 minio 스토리지를 생성하게 된다. 하지만, minio를 설치하면서 변경하고 싶은 옵션이 있었고, 이를 위해서는 github의 kustomization에서 yaml 파일들을 모두 다운받은 후 apply하는 방법이 있을 듯 했다. 이 방법에 대해 고민해 보니, 첫 번째로는 불.. 2022. 7. 10.
[TIL] pod에서 서비스 접속하기 쿠버네티스를 사용하다 보면 컨테이너 내에서 다른 서비스를 접속하는 일이 있다. 이때, ip 주소를 직접 입력하기보다는 dns 서버를 이용해서 접근하는 것이 훨씬 유용하다. 쿠버네티스에는 내부적으로 CoreDNS라는 dns 서버를 사용한다. CoreDNS는 기본적으로 kube-system 네임스페이스에 속해있고, configmap은 다음과 같이 볼 수 있다. kubectl describe cm -n kube-system coredns Name: coredns Namespace: kube-system Labels: Annotations: Data ==== Corefile: ---- .:53 { errors health { lameduck 5s } ready kubernetes cluster.local in-.. 2022. 7. 10.
Minikube, Kubeadm, Kind, K3S Kubernetes를 사용해서 서비스 오케스트레이션을 진행할 때, 로컬 개발 환경으로 선택할 수 있는 옵션들은 크게 4가지가 있는 것 같다. 나는 이전에 주로 MiniKube를 사용했는데, MiniKube 말고도 다른 기술들을 비교해놓은 글이 있어서 가져와 보았다. https://www.padok.fr/en/blog/minikube-kubeadm-kind-k3s MiniKube, Kubeadm, Kind, K3S: how to start with Kubernetes? This blog post compares four Kubernetes technologies: MiniKube, Kubeadm, Kind and K3S to help beginners start with Kubernetes. www.pad.. 2022. 5. 8.