서버를 관리한다는 것 = 서버의 상태를 관리하기 위한 노력
유튜브 : 초보를 위한 쿠버네티스 안내서 를 보고 공부한 내용을 정리했습니다.
복잡한 컨테이너 환경을 효과적으로 관리하기 위한 도구
클러스터링이란 ) 노드를 하나하나 관리하는게 아니라 클러스터 단위(여러개의 노드)로 추상화해서 관리한다.
마스터서버 ) 하나하나 노드에 ssh로 접속하는게 아니라, 마스터 서버에 명령어를 내려서 관리한다.
주의점) 다만 노드들끼리 가상네트워크등을 통하여 잘 통신이 이루어지도록 / 부하를 감당할 수 있도록 잘 설계해놔야한다.
내가 {image : "app1", replacas : 3} 으로 명령내리면
알아서 복사본을 3개로 만들고, 그 중 하나가 죽더라도 새로 하나를 만들어서 3개를 유지하도록 관리해준다.
노드들 중 적합한 노드에 새로운 app등을 배정한다.
ver1 -rollout-> ver2 -rollback-> ver1 등을
여러개의 노드에 동일하게 적용시킨다.
서비스가 등록되고, 조회하는 절차가 있는데 웹에서 100으로 뜨면 서버에 100을 등록하고, 101이 뜨면 서버에 101을 등록한다. 이걸 사용하는 프록시 서버는 계속 저장소를 관찰하다가, 바뀌게 될때마다 (1. 설정변경 2. 프로세스 재시작) 을 자동으로 한다.
aws등을 노드에 연결 시킬 때, 일일히 설정하는게 아니라 추상적으로 설정으로 관리할 수 있다.
많은 도구들이 우후죽순 나왔지만, 그 중에서 kubernetes의 장점
(오픈소스, 활발한 커뮤니티, 무한한 확장성, 사실상의 표준) 이 있기때문에 kubernetes를 공부해보도록 하자!