해결된 질문
23.11.30 00:41 작성
·
302
0
안녕하세요 수강생입니다.
다른 분들은 다 이해하셨겠지만, 순전히 궁금해서 질문드립니다.
VPC CNI 강의에서 노드에 ENI가 있고 슬롯개수따라 Secondary IP를 가지고 해당 Secondary IP는 Pod에 부여된다. 그리고 Secondary IP가 부족하면 Secondary ENI를 추가한다.로 이해했습니다.
그 후 강의 중 '기본 네트워크 환경 강의(1),(2)'에서 'coredns는 노드 수에 상관없이 두개의 노드에 스케줄링된다.' 했을 때,
두개의 노드에 대해서 처음부터 Secondary ENI가 있는건 coreDNS로 인해 POD가 늘어났기 때문이고 이로 인해, 노드 3의 경우는 새로운 POD가 스케줄링 될 때 Secondary ENI가 부여됐다고 이해했습니다.
여기서 제가 궁금한게... 그렇다면, 이전에 Secondary IP는 다 부여가 되었으니 새로운 ENI를 할당한거라고 생각하는데...그 Secondary IP들은 다 어디에 부여된걸까요...? POD는 owide로 확인해봐도 부여된게 안보이는데 궁금해서 여쭤봅니다. 다른 컴포넌트에 부여가 되는건지 아니면 강의에서 얘기했을 수도 있는데 제가 앞부분이라서 못들은거라면, 해당 내용에 대한 세션 좀 확인 부탁드립니다.
감사합니다.
답변 1
0
2023. 11. 30. 22:17
안녕하세요. CloudNet@ 팀입니다.
VPC CNI IP 관리에 대해 문의주셨는데요.
일단 Secondary ENI에 생성과 Secondary IP 생성에 대해 잘 이해하신 것 같습니다.
질문의 요지가 새로운 ENI가 생성되는 것은 Secondary IP가 모두 소모(할당)된 후에 생성되는데 모두 할당하지 않았는데 왜 ENI가 생성되었는지?
그리고 해당 Secondary 주소가 과연 어디에 할당한 것으로 이해했는데요.
Secondary ENI 생성 관련해 단계별로 흐름을 살펴보자면~
1] 최초 노드가 생성되면 Primary ENI 생성 후 slot에 Primary IP와 Secondary IP를 정의합니다.
2] 파드가 최초 생성되면 Secondary ENI가 추가로 생성되고 slot에 Primary IP와 Secondary IP를 정의합니다.
여기서 보면 Primary ENI에 모든 Secondary IP를 부여하지 않아도.. 파드가 최초 생성되면 Secondary ENI가 생성되는 것이죠.
위 그림을 보면 Node 1과 Node 2에 coreDNS 파드가 생성되니 Secondary ENI가 생성되고 Primary IP와 Secondary IP가 생성되었네요. (Primary ENI의 Secondary IP가 모두 소진되지 않아도 말이죠)
Node 3은 최초 파드 생성이 없으니 Primary ENI만 존재하는 것이고요.
그리고 coreDNS에 각각 보유한 Secondary IP 대역 중에 하나를 할당하는 것이고요.
3] 이후에 작업은... 파드가 다수 생성됨에 따라 Primary 및 Secondary ENI에 보유한 Secondary IP가 모두 소진한 후에 신규 Secondary ENI를 생성하고 관리합니다.
신규 ENI 생성에 대한 법칙을 정의해 보면
[결론1] 최초 파드 생성 시 Secondary ENI를 생성한다.
[결론2] 이후 파드 생성 시 모든 Secondary IP가 소진된 후 Secondary ENI를 추가 생성한다.
저도 이 부분은 일반적인 알고리즘의 이해와 다른 특이한 면이라 생각합니다 :)
도식화 영상 다시 한 번 보시면 조금 더 이해될 것 같네요.
질문 감사합니다.