User Agent
Overview
QueryPie Agent를 설치하면, DataGrip, DBeaver와 같은 SQL Client, iTerm/SecureCRT와 같은 SSH Client, Lens, k9s와 같은 3rd Party 애플리케이션을 사용할 수 있습니다.
에이전트 앱 다운로드 및 실행하기
- QueryPie 로그인 후 우측 상단 프로필을 클릭하여
Agent Download
버튼을 클릭합니다.
QueryPie Web > 프로필 메뉴
- QueryPie Agent Downloads 팝업창이 실행되면 Step 1에서 사용 중인 PC 운영체제에 맞는 설치 파일을 다운로드한 후 Step 3에 있는 QueryPie URL을 복사해 둡니다.
QueryPie Web > Agent Downloads 팝업창
QueryPie Agent는 Mac, Windows, Linux OS를 지원합니다.
- 다운로드받은 QueryPie Agent 설치 프로그램을 실행하여 설치를 완료합니다.
Mac OS 설치 프로그램
- 설치 완료된 QueryPie Agent를 실행합니다. QueryPie Host 입력란에 미리 복사해뒀던 QueryPie URL을 입력하고
Next
버튼을 클릭하면 로그인 화면으로 진입하게 됩니다.
Agent > QueryPie Host 입력
QueryPie Agent에 로그인하기
- Agent 앱 내 로그인 화면에서
Login
버튼을 클릭합니다.
- 웹 브라우저가 열리면, 로그인 페이지에서 인증정보를 입력하고,
Continue
버튼을 클릭합니다.
QueryPie Web > Agent Login Page
- 로그인을 성공하면 아래와 같이 로그인 성공 화면이 표시되며 이후 Agent로 돌아갑니다.
QueryPie Web > Agent Login Success Page
- Agent 열기를 명시적으로 수행하여 인증정보를 Agent로 전달합니다.
Chrome - Agent App 열기 모달
에이전트로 데이터베이스 접속하기
- 로그인이 정상적으로 완료되면 Agent 앱 내 Databases 탭에서 권한 있는 커넥션들의 접속 정보를 확인할 수 있습니다.
접속할 커넥션에 할당된Port
를 클릭하면, 해당 커넥션의Proxy Credentials
정보를 확인할 수 있습니다.
Agent > DB Connection Information
- 위의 접속 정보를 3rd Party 클라이언트에 입력하면 DB 커넥션 접속이 가능합니다.
3rd Party Client를 이용한 DB 커넥션 접속
에이전트를 통한 서버 접속
로그인이 정상적으로 완료되면 Agent 앱 내 Server 탭에서 권한 있는 서버를 확인할 수 있습니다.
1. 서버 역할 선택하기
- 사용자 프로필 영역 하단의
Role
버튼을 클릭하여 원하는 역할을 고르고OK
버튼을 클릭하세요. - Default 역할 선택시, Workflow > Server Access Request 요청에 의해 할당받은 서버 권한을 사용합니다.
Agent > Server > Select a Role
역할이 두 개 이상이라면, Agent 로그인 후 Server 기능 사용을 위해 역할 선택을 먼저 완료해야 합니다.
2.Agent로 서버 접속하기
- 접속할 서버를 우클릭 후 Open Connection with 메뉴를 선택하여, 사용하려는 터미널 툴을 선택합니다.
Agent > Server > Open Connection with
- 이후 해당 서버에 접속 가능한 계정이 여러개라면, Account 선택창이 열립니다.
- 사용하려는 계정을 선택하고 필요시 비밀번호를 입력한 뒤,
OK
버튼을 클릭하여 세션을 엽니다.
Agent > Server > Open New Session
3. Seamless SSH 설정하기
Seamless SSH란 기존 터미널 사용성을 그대로 유지하면서 QueryPie를 통해 서버에 접속할 수 있는 기능입니다. 다음음의 방법으로 .ssh 폴더에 config 파일을 생성하여 손쉽게 seamless SSH 설정이 가능합니다.
- 터미널을 열고, .ssh 폴더로 이동합니다.
$ cd .ssh
- ssh 폴더에서 config 파일을 생성하기 위해 vi 에디터를 엽니다.
$ vi config
- 아래의 내용을 입력 후,
wq
키를 입력하여 vi 에디터를 나옵니다.
Host {{Server Name}}
Hostname {{Server URL}}
Port {{Server SSH Port}}
ProxyCommand qpa ssh %r %h %p
config 파일 작성 시 Seamless SSH 설정하고자 하는 서버마다 서버 이름, URL, 포트를 입력함으로써 서버를 특정합니다. 서버 간에 URL, 포트가 겹치지 않는 경우 아래와 같이 입력하여도 접속이 가능합니다.
Host *
ProxyCommand qpa ssh %r %h %p
- 이상으로 설정이 완료됩니다. Agent > Server 탭에서 역할을 선택하면 기존 ssh 명령어로 서버에 접속할 수 있습니다.
$ ssh deploy@{{Server Name}}
에이전트를 통한 쿠버네티스 접속
- 권한을 부여 받은 사용자는 에이전트 실행 시 현재 정책에 따른
kubeconfig
파일이 자동으로 수신됩니다. - 이를 통해 Kubernetes Client(kubectl, lens, k9s 등) 툴로 Kubernetes API 리소스에 접근할 수 있습니다.
- 에이전트에서는 접근 가능한 클러스트 리스트를 표시하며, 각 클러스터에 적용된 정책을 확인할 수 있습니다.
- 또한 설정 메뉴를 통해 kubeconfig파일의 위치를 확인 및 수정할 수 있습니다.
1. Kubernetes 역할 선택하기
사용자 프로필 영역 하단의 Role
버튼을 클릭하면 역할 선택 모달이 열립니다. 원하는 역할을 고르고 OK
버튼을 클릭하세요.
Agent > Kubernetes > Select a Role
역할이 두 개 이상이라면, Agent 로그인 후 Kubernetes 기능 사용을 위해 역할 선택을 먼저 완료해야 합니다.
2. Policy 조회하기
선택된 역할에 따라 접근 가능한 리소스가 표시됩니다. 각 클러스터 우측의 🔍
버튼을 누르면 Policy Information 팝업창이 나타나며 이곳에서 해당 클러스터에 적용된 정책 목록을 자세히 확인할 수 있습니다.
Agent > Policy Information
3. Kubeconfig 경로 설정하기
Agent 설정 메뉴에서 KubeConfig Path
버튼을 클릭하여 Kubeconfig 경로 설정 모달을 엽니다.
Agent > Settings > Configure Kubeconfig Path
- Path Configuration : Kubeconfig 파일 저장 경로를 사용자가 지정할 수 있습니다.
- 기본값은
$HOME/.kube/querypie-kubeconfig
입니다. - 경로 필드 우측
Upload
버튼을 누르면 로컬 파일 경로를 지정할 수 있는 팝업이 나타납니다.
- 기본값은
경로 지정 팝업
- Where : 우측의
🔽
버튼을 클릭하여 원하는 폴더를 지정합니다. - Save As : Kubeconfig 파일의 이름을 입력합니다. 변경하지 않으면 기본값으로 적용됩니다.
- Command Line : KUBECONFIG 환경 변수를 선언하기 위한 커맨드 라인을 제공합니다.
- KUBECONFIG 환경 변수를 최초 설정하는 경우, 명령 줄 내의 디폴트 “
${KUBECONFIG}
” 값을 사용 전에 “${HOME}/.kube/config
”로 변경해야 합니다.
export KUBECONFIG="${HOME}/.kube/config:${HOME}/.kube/querypie-kubeconfig"
- QueryPie에서 제공된 사용자 지정 kubeconfig 경로를 변경한 경우 새 경로로 환경 변수를 다시 선언해야 합니다.
export KUBECONFIG="${KUBECONFIG}:<사용자가 지정한 경로>"
- 보다 자세한 kubeconfig에 대한 내용은 다음 링크를 참조해주시기 바랍니다.
- 참고: kubeconfig 파일 병합
- 참고: KUBECONFIG 환경 변수 설정
Copy
로 커맨드라인을 복사하여 클라이언트에 선언하고 컨텍스트를 접근 가능한 클러스터로 스위칭할 수 있습니다
export KUBECONFIG="${KUBECONFIG}:${HOME}/.kube/querypie-kubeconfig"
QueryPie Agent 세팅 초기화하기
세팅을 초기화하면 입력하였던 QueryPie Host 정보가 초기화되어 다시 입력할 수 있게 됩니다.
Agent 내 설정 메뉴에서 초기화
프로필 영역 우측 ⚙️
버튼을 클릭하여 설정 메뉴를 엽니다. Reset All Settings
버튼을 클릭합니다.
Agent > Settings
(Mac) 메뉴 막대 내 앱 메뉴에서 초기화
메뉴 막대에서 QueryPie Agent 아이콘을 클릭하여 앱 메뉴를 엽니다. Reset All Settings
버튼을 클릭합니다.
Agent > App menu