Skip to main content
Skip table of contents

Agent

Overview

QueryPie Agent를 설치하면, DataGrip, DBeaver와 같은 SQL Client, iTerm/SecureCRT와 같은 SSH Client, Lens, k9s와 같은 3rd Party 애플리케이션을 사용할 수 있습니다.

에이전트 앱 다운로드 및 실행하기

1. QueryPie 로그인 후 우측 상단 프로필을 클릭하여 Agent Download 버튼을 클릭합니다.

스크린샷 2024-08-04 오후 5.30.02.png

QueryPie Web > 프로필 메뉴

2. QueryPie Agent Downloads 팝업창이 실행되면 Step 1에서 사용 중인 PC 운영체제에 맞는 설치 파일을 다운로드한 후 Step 3에 있는 QueryPie URL을 복사해 둡니다.

image-20240723-154847.png

QueryPie Web > Agent Downloads 팝업창

QueryPie Agent는 Mac, Windows, Linux OS를 지원합니다.

3. 다운로드받은 QueryPie Agent 설치 프로그램을 실행하여 설치를 완료합니다.

스크린샷 2024-08-04 오후 5.40.02.png

Mac OS 설치 프로그램

4. 설치 완료된 QueryPie Agent를 실행합니다. QueryPie Host 입력란에 미리 복사해뒀던 QueryPie URL을 입력하고 Next 버튼을 클릭하면 로그인 화면으로 진입하게 됩니다.

Agent > QueryPie Host 입력

QueryPie Agent에 로그인하기

1. Agent 앱 내 로그인 화면에서 Login 버튼을 클릭합니다.

스크린샷 2024-08-04 오후 5.37.13.png

2. 웹 브라우저가 열리면, 로그인 페이지에서 인증정보를 입력하고, Continue 버튼을 클릭합니다.

스크린샷 2024-07-29 오후 5.12.36.png

QueryPie Web > Agent Login Page

3. 로그인을 성공하면 아래와 같이 로그인 성공 화면이 표시되며 이후 Agent로 돌아갑니다.

스크린샷 2024-07-29 오후 5.13.14.png

QueryPie Web > Agent Login Success Page

4. Agent 열기를 명시적으로 수행하여 인증정보를 Agent로 전달합니다.

스크린샷 2024-08-04 오후 5.42.09.png

Chrome - Agent App 열기 모달

에이전트로 데이터베이스 접속하기

1. 로그인이 정상적으로 완료되면 Agent 앱 내 Databases 탭에서 권한 있는 커넥션들의 접속 정보를 확인할 수 있습니다.
접속할 커넥션에 할당된 Port 를 클릭하면, 해당 커넥션의 Proxy Credentials 정보를 확인할 수 있습니다.

스크린샷 2024-07-30 오후 3.10.01.png

Agent > DB Connection Information

2. 위의 접속 정보를 3rd Party 클라이언트에 입력하면 DB 커넥션 접속이 가능합니다.

agent-07.png

3rd Party Client를 이용한 DB 커넥션 접속

에이전트를 통한 서버 접속

로그인이 정상적으로 완료되면 Agent 앱 내 Server 탭에서 권한 있는 서버를 확인할 수 있습니다.

1. 서버 역할 선택하기

  • 프로필 영역 하단의 역할 버튼을 클릭하여 원하는 역할을 고르고 Select 버튼을 클릭하세요.

  • Default 역할 선택시, Workflow > Server Access Request 요청에 의해 할당받은 서버 권한을 사용합니다.

스크린샷 2024-07-30 오후 4.26.53.png

Agent > Server > Select a Role

역할이 두 개 이상이라면, Agent 로그인 후 Server 기능 사용을 위해 역할 선택을 먼저 완료해야 합니다.


2. Agent로 서버 접속하기

  • 접속할 서버를 우클릭 후 Open Connection with 메뉴를 선택하여, 사용하려는 터미널 툴을 선택합니다.

스크린샷 2024-07-30 오후 4.17.29.png

Agent > Server > Open Connection with

  • 이후 해당 서버에 접속 가능한 계정이 여러개라면, Account 선택창이 열립니다.

  • 사용하려는 계정을 선택하고 필요시 비밀번호를 입력한 뒤, OK 버튼을 클릭하여 세션을 엽니다.

스크린샷 2024-07-30 오후 4.25.32.png

Agent > Server > Open New Session

3. Seamless SSH 설정하기

Seamless SSH란 기존 터미널 사용성을 그대로 유지하면서 QueryPie를 통해 서버에 접속할 수 있는 기능입니다. 다음음의 방법으로 .ssh 폴더에 config 파일을 생성하여 손쉽게 seamless SSH 설정이 가능합니다.

1) 터미널을 열고, .ssh 폴더로 이동합니다.

CODE
$ cd .ssh

2) ssh 폴더에서 config 파일을 생성하기 위해 vi 에디터를 엽니다.

CODE
$ vi config

3) 아래의 내용을 입력 후, wq 키를 입력하여 vi 에디터를 나옵니다.

CODE
Host {{Server Name}}
  Hostname {{Server URL}}
  Port {{Server SSH Port}}
  ProxyCommand qpa ssh %r %h %p

config 파일 작성 시 Seamless SSH 설정하고자 하는 서버마다 서버 이름, URL, 포트를 입력함으로써 서버를 특정합니다. 서버 간에 URL, 포트가 겹치지 않는 경우 아래와 같이 입력하여도 접속이 가능합니다.

CODE
Host *
  ProxyCommand qpa ssh %r %h %p

4) 이상으로 설정이 완료됩니다. Agent > Server 탭에서 역할을 선택하면 기존 ssh 명령어로 서버에 접속할 수 있습니다.

CODE
$ ssh deploy@{{Server Name}}

에이전트를 통한 쿠버네티스 접속

  • 권한을 부여 받은 사용자는 에이전트 실행 시 현재 정책에 따른 kubeconfig 파일이 자동으로 수신됩니다.

  • 이를 통해 Kubernetes Client(kubectl, lens, k9s 등) 툴로 Kubernetes API 리소스에 접근할 수 있습니다.

  • 에이전트에서는 접근 가능한 클러스트 리스트를 표시하며, 각 클러스터에 적용된 정책을 확인할 수 있습니다.

  • 또한 설정 메뉴를 통해 kubeconfig파일의 위치를 확인 및 수정할 수 있습니다.

1. Kubernetes 역할 선택하기

프로필 영역 하단의 역할 버튼을 클릭하면 역할 선택 모달이 열립니다. 원하는 역할을 고르고 Select 버튼을 클릭하세요.

스크린샷 2024-07-30 오후 3.27.05.png

Agent > Kubernetes > Select a Role

역할이 두 개 이상이라면, Agent 로그인 후 Kubernetes 기능 사용을 위해 역할 선택을 먼저 완료해야 합니다.

2. Policy 조회하기

선택된 역할에 따라 접근 가능한 리소스가 표시됩니다. 각 클러스터 우측의 🔍 버튼을 누르면 Policy Information 팝업창이 나타나며 이곳에서 해당 클러스터에 적용된 정책 목록을 자세히 확인할 수 있습니다.

스크린샷 2024-07-30 오후 4.11.41.png

Agent > Policy Information

3. Kubeconfig 경로 설정하기

Agent 설정 메뉴에서 KubeConfig Path 버튼을 클릭하여 Kubeconfig 경로 설정 모달을 엽니다.

스크린샷 2024-07-30 오후 3.46.23.png

Agent > Settings > Configure Kubeconfig Path

  • Path Configuration : Kubeconfig 파일 저장 경로를 사용자가 지정할 수 있습니다.

    • 기본값은 $HOME/.kube/querypie-kubeconfig 입니다.

    • 경로 필드 우측 Upload 버튼을 누르면 로컬 파일 경로를 지정할 수 있는 팝업이 나타납니다.

스크린샷 2024-07-30 오후 4.35.30.png

경로 지정 팝업

  • Where : 우측의 🔽 버튼을 클릭하여 원하는 폴더를 지정합니다.

  • Save As : Kubeconfig 파일의 이름을 입력합니다. 변경하지 않으면 기본값으로 적용됩니다.

  • Command Line : KUBECONFIG 환경 변수를 선언하기 위한 커맨드 라인을 제공합니다.

1) KUBECONFIG 환경 변수를 최초 설정하는 경우, 명령 줄 내의 디폴트 "${KUBECONFIG}" 값을 사용 전에 "${HOME}/.kube/config"로 변경해야 합니다.

CODE
export KUBECONFIG="${HOME}/.kube/config:${HOME}/.kube/querypie-kubeconfig"

2) QueryPie에서 제공된 사용자 지정 kubeconfig 경로를 변경한 경우 새 경로로 환경 변수를 다시 선언해야 합니다.

CODE
export KUBECONFIG="${KUBECONFIG}:<사용자가 지정한 경로>"

3) 보다 자세한 kubeconfig에 대한 내용은 다음 링크를 참조해주시기 바랍니다.

4) Copy 로 커맨드라인을 복사하여 클라이언트에 선언하고 컨텍스트를 접근 가능한 클러스터로 스위칭할 수 있습니다.

CODE
export KUBECONFIG="${KUBECONFIG}:${HOME}/.kube/querypie-kubeconfig"

QueryPie Agent 세팅 초기화하기

세팅을 초기화하면 입력하였던 QueryPie Host 정보가 초기화되어 다시 입력할 수 있게 됩니다.

Agent 내 설정 메뉴에서 초기화

프로필 영역 우측 ⚙️ 버튼을 클릭하여 설정 메뉴를 엽니다. Reset All Settings 버튼을 클릭합니다.

스크린샷 2024-07-30 오후 3.35.18.png

Agent > Settings

(Mac) 메뉴 막대 내 앱 메뉴에서 초기화

메뉴 막대에서 QueryPie Agent 아이콘을 클릭하여 앱 메뉴를 엽니다. Reset All Settings 버튼을 클릭합니다.

스크린샷 2024-07-30 오후 3.35.24.png

Agent > App menu

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.