프로젝트&&스터디31 [KANS-5주차] service- LoadBalancer Type과 MetalLB 이번 학습과정은 Service의 LoadBalancer Type과 이를 온프레미스에서 활용할 수 있는 MetalLB를 알아보겠습니다. Load Balancer 타입일단 Load Balancer Type은 NodePort와 동일하게 외부 클라이언트가 쿠버네티스 내부로 들어올 수 있도록 만들어주는 기능입니다. 다만 Node의 IP를 직접적으로 알지 않아도 External IP라는 외부 IP를 통해서 접근할 수 있게 일종의 프록시 역할을 대신하고 있습니다. 쿠버네티스에서는 직접적으로 LB 컴포넌트는 없기 때문에 MetalLB같은 오픈소스 소프트웨어를 사용하고 있습니다. 지난번 글에서 LoadBalancer 타입을 약간 언급했는데, 클라우드 환경에서는 편하게 LoadBalancer 서비스에서 대신하고 있습니다... 2024. 10. 5. [KANS] kubernetes-service (1) - ClusterIP와 NodePort 이번 주제는 kubernetes의 네트워크 service에 대해서 알아보도록 하겠습니다. 전통적인 트래픽 전송은 pod에 할당된 IP에 직접 호출하는 것이였습니다. 우리가 10.0.1.1이라는 pod IP를 알면 그냥 호출하면 되는거죠. 그런데 우리가 흔히 실제로 운영을 하다보면 컨테이너는 쉽게 문제가 생겨 죽거나 급증하는 트래픽을 감당하기 위해 auto scaling 되기도 합니다. 그럼 이 pod의 IP들을 알 수 없어 감당하기 힘들어지게 되죠.따라서 가상의 고정 IP를 할당하고, 쉽게 호출할 수 있는 도메인을 제공하는 Service가 등장하게 됩니다. Service yamlhttps://kubernetes.io/docs/concepts/services-networking/service/ 공식문서.. 2024. 9. 24. [Terraform 101] 테라폼 백엔드 테라폼은 tfstate 파일이라는 상태파일을 저장합니다. 사실상 이 파일이 테라폼이 자원을 관리하는 방식이고 테라폼을 실행할 때는 이 tfstate 파일을 현재 리소스와 비교해서 작업을 진행합니다. 그렇기 때문에 tfstate 파일에는 매우 중요한 정보들이 많이 있고, 이게 없어지거나 하나의 부분만 빠져도 사실상 리소스를 관리할 수 없게됩니다. 기본적인 저장위치는 local이지만, 테라폼에서는 원하는 지정 저장소에 tfstate파일을 저장할 수 있도록 하고 있습니다. 대표적인게 AWS S3입니다. S3를 백앤드로 쓰면 S3의 기능을 장점으로 활용할 수 있습니다. - AWS 리소스를 이용할 경우 (그 외에도) 중앙 저장소가 필요한데 S3를 통해서 중앙 저장소로 활용할 수 있다. - S3의 versionin.. 2022. 12. 12. [T101 스터디] 네이버 클라우드 NKS 클러스터 구성하기 이번 시간에는 Terraform을 통해서 NKS 클러스터를 구성해보도록 하겠습니다. 대략적인 구성은 아래와 같은 모습이고 NKS 서비스 자체가 managed master node이기 때문에 대부분의 클라우드 벤더사와 같이 kubernetes service 구성과 worker node pool을 별도로 구성하여 생성합니다. 1. bastion.tf 대부분 클러스터는 프라이빗 서브넷에 존재시키고 bastion에 kube-config정보를 등록하고 실행시키도록 구성하였습니다. bastion은 퍼블릭 서브넷에 존재하고, 접속을 위한 public IP를 받을 수 있도록 생성합니다. 그리고 login_key는 추후에 생성할 login pem키를 작성합니다. resource "ncloud_server" "bastio.. 2022. 12. 11. [T101 스터디] 네이버 클라우드 - Auto Scaling 및 LB 배포 구조 파악 완성된 code는 github에서 확인할 수 있다. 사전 작업 이전글인 단일 웹서버 배포에서 구성했던 VPC, Subnet, ACG를 사용한다는 전제하에 작업을 진행합니다. 해당 리소스들이 규정되어있지 않다면 이전글을 참조해주기 바랍니다. Auto Scaling 구성 auto scaling은 기본적으로 launch configuration을 먼저 규정하여 해당 configuration의 이미지를 통해서 scaling 작업을 진행합니다. 따라서 autoscaling.tf 파일을 구성할 내용을 작성해보겠습니다. 1. launch_configuration 생성 resource "ncloud_launch_configuration" "lc" { name = "my-lc" server_image_prod.. 2022. 11. 12. [T101 스터디] 네이버 클라우드 - VPC 환경의 단일 WebServer 배포 당연하지만 우리는 클라우드 벤더사의 자원을 생성할 것이고, CLI를 이용하기 때문에 반드시 사전작업을 먼저 진행해야한다. 사전 작업을 진행했다는 전제 하에 다음 작업을 수행할 수 있다. 완성된 코드는 github에서 확인할 수 있다. 작업 디렉토리 생성 앞서 말했듯 테라폼에서는 작업 디렉토리 단위로 작업을 편성하고 이를 마치 프로젝트라고 생각하면 된다. 우리는 web-dev라는 하나의 프로젝트를 구성하겠다. mkdir single-web-server cd single-web-server provider 규정 가장 먼저 할 일은 내가 사용할 provider가 무엇인지 테라폼에게 알려주는 일이다. 따라서 provider 선언을 해주고 terraform init명령어를 통해서 해당 디렉토리를 해당 환경으로 규.. 2022. 11. 12. 이전 1 2 3 4 5 6 다음