220602 Today I Learned
일지
특이 사항 없음
오늘의 할일
- 220602 TIL 작성
- Kubernetes udemy 강좌 수강
- AWS 스터디
주요 키워드
- K8s
- 파드 스케쥴링
- 노드 어피니티
- 파드 어피니티
- 파드 스케쥴링
공부 정리
어피니티(Affinity)
- 끌림, 선호도
- 어피니티 종류
- 노드 어피니티
- 파드 어피니티
- 파드 어피니티
- 파드 안티어피니티
노드 어피니티
- Node Selector와 유사한 개념
- 노드 셀렉터와의 차이점
- 노드 셀렉터: 반드시 레이블 조건을 만족하여야 파드 배치
- 노드 어피니티: ‘선호도’를 지정하는 개념, 선호하지 않는 경우에도 파드 배치 가능
- 노드 어피니티 설명
- kubectl explain pod.spec.affinity
- kubectl explain pod.spec.affinity.nodeAffinity
- 주의: nodeSelectorTerms, matchExpressions 조건
- nodeSelectorTerms는 복수의 matchExpressions 조건을 포함(List)
- : matchExpression 항목 중 하나라도 만족하면 Selector에서 파드를 배치 (OR)
- matchExpressions는 복수의 세부 조건을 포함(key, operator, value)
- : 각 조건 항목을 모두 만족해야 조건 성립(AND)
- nodeSelectorTerms는 복수의 matchExpressions 조건을 포함(List)
matchExpressions 내 operator 항목
- Exist/DoesNotExist: 키 존재 유무 (value 항목이 필요하지 않음)
- In / NotIn : 집합성 기반 (value 항목을 List로 입력하고, 포함여부 확인)
- Gt(Greater Than), Lt(Less Than) : value 항목을 수치로 판단
preferredDuringSchedulingIgnoredDuringExecution 내 weight의 의미
- 가중치
- 1~100 사이의 수치를 지정
xxxxDuringSchedulingIgnored
- 스케줄링 시 어피니티 설정 반영
IgnoredDuringExecution
- 파드가 배치되어 실행된 이후에는 어피니티 설정 무시
파드 어피니티
- 파드에 대한 선호도를 지정
-
어피니티에 따라서 배치될 노드가 결정
- 파드 어피니티 설명
- kubectl explain pod.spec.affinity.podAffinity
- kubectl explain pod.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution
- kubectl explain pod.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution
- topologyKey: 파드의 어피니티 설정에 따라 분리/결합시킬 때 기준이 되는 값
- (참고: kubectl get nodes –show-labels)
Leave a comment