쿠버네티스
-
[컨테이너] 파드 네트워킹 살짝 열어보기DevOps, 클라우드/Container 2024. 11. 17. 20:47
CNI에 이어서 [컨테이너] 처음 열어보는 CNI 스펙CNI 유지성으로 사용하기지금까지 여러 도구를 사용하면서 공식 문서를 수 차례 참고하고 열어보았지만, CNI는 그렇게 진지하게 대했던 적은 없었던 것 같다. Cilium에서 eBPF가 어쨌고, Calico에서 BGwww.floodnut.com 지난 포스팅에서는 처음으로 CNI 스펙에 관련된 내용을 보면서, 어떤 인터페이스를 구현해야 하는지 확인했다.이번에도 파드 네트워킹이나 네트워크 인터페이스 흐름이 어떻게 되는지 얕고 난잡하게 알아보자. 파드 네트워크 구성 파드 네트워크 생성 흐름을 살짝 확인해보자. Kubelet이 파드를 노드에 스케줄링하면, 파드에서 네트워크 설정을 요청한다.그러면, Kubelet이 CNI를 통해서 파드의 네트워크를 설정한다. ..
-
[컨테이너] 처음 열어보는 CNI 스펙DevOps, 클라우드/Container 2024. 11. 9. 16:52
CNI 유지성으로 사용하기지금까지 여러 도구를 사용하면서 공식 문서를 수 차례 참고하고 열어보았지만, CNI는 그렇게 진지하게 대했던 적은 없었던 것 같다. Cilium에서 eBPF가 어쨌고, Calico에서 BGP, Bird, Felix 어쨌고, 또 AWS VPC CNI는 또 어떻고...이런 제반사항들을 그저 이론으로만 접하고 있었다고 생각한다. 물론 이런 이론조차도 작은 트러블 슈팅에는 도움이 되었지만, 그래도 앞으로는 CNI를 좀 더 유지성하게 써보기 위해서 '조금만 더' 다이브 해보려고 한다. CNI 스펙CNI를 준수하는 컨테이너 오케스트레이션은 꼭 쿠버네티스만 있는 것은 아니다.AWS ECS, Apache Mesos도 역시 CNI를 준수하고, Containerd나 CRI-O와 같은 런타임 역시 ..
-
[HomeLab] Calico와 Tailscale 충돌 문제DevOps, 클라우드/Container 2024. 6. 22. 21:07
서론내부망에 쿠버네티스 클러스터를 올리고 외부의 인바운드를 열어놓지 않은 상황이었다.워크로드 MVP 개발을 마무리한 후에 특정 서비스를 외부망에 열어놓으려 했다.반대로 특정 서비스는 내부망에서만 접근이 가능하도록 하려 했다.VPN을 쓸까?클러스터는 Calico CNI를 사용하고 있는 상태였고 각 노드와 내부망에 접근하기 위해 VPN을 직접 구축하려 했다.직접 구축해도 되었지만 이건 별도로 해도 상관 없을 것 같았고 빠르게 사용하기 위해서 Tailscale을 각 노드에 설치했다.MetalLB의 IP 대역 할당이 정상적으로 이루어지지 않는 문제NodePort를 써도 충분했지만 서비스를 LoadBalancer 타입으로 서빙하고 싶었다.그래서 MetalLB를 설정하고 DHCP의 IP 대역을 정리해서 IP Poo..
-
라즈베리파이를 이용한 멀티 노드 클러스터링 (4) - Spring BootDevOps, 클라우드/Container 2022. 4. 6. 23:07
기존에 짜던 스프링부트 API 서버를 k3s 클러스터를 통해 배포해보려고 한다. 스프링부트에 대한 정리는 추후 여유가 있다면 한번 해보겠다. # safe-dp.yaml apiVersion: apps/v1 kind: Deployment metadata: name: safeapi-dp spec: selector: matchLabels: app: safe-api template: metadata: labels: app: safe-api spec: containers: - name: safeapi-dp image: floodnut/apiserver-dp-arm64:latest imagePullPolicy: Always resources: limits: memory: "2Gi" cpu: "2" ports: - c..
-
라즈베리파이를 이용한 멀티 노드 클러스터링 (3) - MySQLDevOps, 클라우드/Container 2022. 4. 5. 02:58
쿠버네티스 공부를 하겠다고 한 후 한참이 지났다. 사실 그 동안 정말 오케스트레이션을 쓰는게 좋은 것인가?를 두고 많이 고민했다. 정확히는 내가 만드는 서비스, 프로젝트에서 쿠버네티스가 정말 효용성이 있는지를 따지다보니 후순위로 밀린 감이 없지 않아 있다. 이번에 진행 중인 프로젝트를 위해서 데이터베이스와 API 서버를 k3s에 배포해보려고 한다. 다시금 쿠버네티스를 만져보면서 이전에 써둔 글을 그대로 따라했다. 물론 별 내용은 없지만 매 번 검색하고 찾는 것보다는 내가 정리한 글이 따라해보기 편한 것 같다. 그래서 이 글도 계속 작성하려한다. #pv-local.yaml apiVersion: v1 kind: PersistentVolume metadata: name: "pv-local" labels: ty..