월루를 꿈꾸는 대학생
PKOS 2주차 본문

‘24단계 실습으로 정복하는 쿠버네티스’ 책을 기준하여 정리하였습니다.
http://www.yes24.com/Product/Goods/115187666
24단계 실습으로 정복하는 쿠버네티스 - YES24
실무 현장의 경험을 고스란히 담은 쿠버네티스 실습서!직접 해야만 알 수 있는 것들이 있다. 쿠버네티스도 마찬가지다. 쿠버네티스의 기반이 되는 컨테이너 기술은 기존의 가상 머신과 기본 전
www.yes24.com

kops로 클러스터 생성
# AWSLoadBalancerController IAM 정책 생성 : 이미 정책이 있다면 Skip~
curl -o iam_policy.json https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.4.5/docs/install/iam_policy.json
aws iam create-policy --policy-name AWSLoadBalancerControllerIAMPolicy --policy-document file://iam_policy.json
# EC2 instance profiles 에 IAM Policy 추가(attach) : 처음 입력 시 적용이 잘 안될 경우 다시 한번 더 입력 하자! - IAM Role에서 새로고침 먼저 확인!
aws iam attach-role-policy --policy-arn arn:aws:iam::$ACCOUNT_ID:policy/AWSLoadBalancerControllerIAMPolicy --role-name masters.$KOPS_CLUSTER_NAME
aws iam attach-role-policy --policy-arn arn:aws:iam::$ACCOUNT_ID:policy/AWSLoadBalancerControllerIAMPolicy --role-name nodes.$KOPS_CLUSTER_NAME
aws iam attach-role-policy --policy-arn arn:aws:iam::$ACCOUNT_ID:policy/AllowExternalDNSUpdates --role-name masters.$KOPS_CLUSTER_NAME
aws iam attach-role-policy --policy-arn arn:aws:iam::$ACCOUNT_ID:policy/AllowExternalDNSUpdates --role-name nodes.$KOPS_CLUSTER_NAME
제약 조건 제거 -> 워커노드 여러개 띄워보기 위해서

AWS VPC CNI
- aws에서는 aws vpc cni 사용
- 파드와 노드의 네트워크 대역이 같다! -> 통신 과정을 단순화 (calico는 파드와 노드의 네트워크 대역이 다르다 )

- 다른 노드와 통신 시 패킷을 감싸서 통신하는데 aws vpc cni는 동일 대역 직접 통신

- 파드 ip와 노드 ip 대역이 같음


현재 파드 갯수 30
테스트용 파드를 생성해서 ip주소를 확인


워커노드 1번에 대역 확인

파드에 직접 들어와서 ip대역 확인도 가능

파드간 통신 테스트
- 별도 nat 없이 (대역이 같으니까) 통신 가능
각 pod 핑 테스트


노드의 ip가 찍히는 게 아니라 pod의 ip가 그대로 찍힘

외부로 나갈 때
- 노드 ip로 snat 됨

파드 배포
-현재 0개

- 레플리카셋으로 100개 적용

최대 파드를 100개 까지 생성가능하도록 설정되어 있음

- iptable 룰에 따르지 않고 바로 로드밸런서에서 pod로 보내줌
- 동적으로 바뀌는 pod ip를 알아야하기에 lb 파드가 지속적으로 갱신해줌


로드밸런서의 타겟이 노드가 아니라 파드의 ip


파드를 줄이거나 늘리면 자동으로 감시해서 타겟그룹에 파드를 넣어줌

인그레스
- http/ https 를 외부 노출

배포 테스트

pod ip로 이동

확인

두가지 경로

로드밸런서 경로 확인

부하를 발생시키는 파드를 생성하고 성능 측정 확인

ebs controller

ebs-csi-controller 파드로 aws api로 ebs 생성 요청하고 파드에 사용할 수 있도록 붙음


해당 파드의 사용량확인



'Server&Network > Kubernets_Dokcer' 카테고리의 다른 글
PKOS 4주차 모니터링 (0) | 2023.04.02 |
---|---|
PKOS 3주차 GitOps (0) | 2023.03.26 |
PKOS 1주차 (2) | 2023.03.12 |
로컬에서 k8s 구축하기 (1) | 2023.03.04 |
쿠버네티스 API 개념 및 보안 내용 정리 (0) | 2022.03.14 |