에이전트를 통해 쿠버네티스 접속하기
Overview
QueryPie 에이전트 앱으로 Proxy를 통해 쿠버네티스 클러스터 API에 접근 가능합니다. 에이전트 앱 실행 후, Kubernetes 탭을 선택하여 역할(Role)을 선택한 뒤 해당 접근 권한에 부합하는 쿠버네티스 설정 파일 KUBECONFIG을 수령하여 기존의 사용성대로 kubectl, k9s, lens 등 쿠버네티스 클라이언트를 활용하여 안전하게 액세스할 수 있습니다.
에이전트를 통한 쿠버네티스 접속
Login
버튼을 클릭하면 웹 브라우저가 실행되며 QueryPie 로그인 페이지로 이동합니다.권한을 부여 받은 사용자는 에이전트를 통해 현재 정책에 따른
kubeconfig
파일을 수령할 수 있습니다.이를 통해 Kubernetes client(kubectl, lens, k9s 등) 도구를 사용하여 Kubernetes API 리소스에 접근할 수 있습니다.
에이전트에서는 접근 가능한 클러스트 리스트를 표시하며, 각 클러스터에 적용된 정책을 확인할 수 있습니다.
또한 설정 메뉴를 통해 kubeconfig파일의 위치를 확인 및 수정할 수 있습니다.
에이전트 화면에서 Kubernetes 탭을 눌러 이동합니다.
다중 Role이 사용자에게 부여된 경우, Role 선택 모달(WebUI에서와 동일)이 제공됩니다.
Role 선택 모달에서 Role을 선택하였거나, 단일 Role만 부여되어 자동 선택이 된 경우, 에이전트에서 해당 Role에 따른 접근 가능한 클러스터 목록을 조회할 수 있게 됩니다.
각 클러스터 우측의 돋보기 버튼을 누르게 되면 Policy Information 모달이 나타납니다.
모달 내에는 해당 클러스터에 접근 권한을 부여하는 정책 목록을 펼접의 형태로 조회할 수 있습니다.
각 정책의 펼접을 펼쳐보면, 정책 코드 내용을 사용자도 조회할 수 있게 됩니다.
우측 상단의 톱니바퀴를 누르면 Agent 설정 메뉴가 나타나고 Configuration 하단의 Kubeconfig Path를 누르면 2가지를 진행할 수 있습니다:
Path Configuration : Kubeconfig 파일 경로를 디폴트($HOME/.kube/querypie-kubeconfig)에서 다른 경로로 사용자가 정의할 수 있습니다.
경로 우측의 버튼을 누르면 로컬 파일 경로를 지정할 수 있는 팝업이 나타납니다.
Command Line : 쿼리파이가 내려준 kubeconfig 파일을 포함하여 접근 가능한 클러스터 호출이 가능하도록 KUBECONFIG 환경 변수를 선언할 수 있도록 커맨드 라인을 제공합니다.
KUBECONFIG 환경 변수를 최초 설정하는 경우, 명령 줄 내의 디폴트 "
${KUBECONFIG}
" 값을 사용 전에 "${HOME}/.kube/config
"로 변경해야 합니다.CODEexport KUBECONFIG="${HOME}/.kube/config:${HOME}/.kube/querypie-kubeconfig"
QueryPie에서 제공된 사용자 지정 kubeconfig 경로를 변경하는 경우 새 경로로 kubeconfig 환경 변수를 다시 설정해야 할 수 있습니다.
보다 자세한 kubeconfig에 대한 내용은 다음 링크를 참조해주시기 바랍니다:
참고: kubeconfig 파일 병합
Copy 버튼을 통해 사용자는 커맨드라인을 복사하여 클라이언트에서 선언하고 컨텍스트를 접근 가능한 클러스터로 스위칭할 수 있습니다.
CODEexport KUBECONFIG="${KUBECONFIG}:${HOME}/.kube/querypie-kubeconfig"
관련 토픽