Skip to Content

User Agent

Overview

QueryPie Agentをインストールすると、DataGrip、DBeaverのようなSQL Client、iTerm/SecureCRTのようなSSH Client、Lens、k9sのような3rd Partyアプリケーションを使用できます。

エージェントアプリダウンロードおよび実行

  1. QueryPieログイン後右上プロフィールをクリックしてAgent Downloadボタンをクリックします。

QueryPie Web > プロフィールメニュー

QueryPie Web > プロフィールメニュー

  1. QueryPie Agent Downloadsポップアップウィンドウが実行されるとStep 1で使用中のPCオペレーティングシステムに合うインストールファイルをダウンロードした後Step 3にあるQueryPie URLをコピーしておきます。

QueryPie Web > Agent Downloadsポップアップウィンドウ

QueryPie Web > Agent Downloadsポップアップウィンドウ

QueryPie AgentはMac、Windows、Linux OSをサポートします。

  1. ダウンロードしたQueryPie Agentインストールプログラムを実行してインストールを完了します。

Mac OSインストールプログラム

Mac OSインストールプログラム

  1. インストール完了されたQueryPie Agentを実行します。QueryPie Host入力欄に事前にコピーしておいたQueryPie URLを入力してNextボタンをクリックするとログイン画面にアクセスします。

Agent > QueryPie Host入力

Agent > QueryPie Host入力

QueryPie Agentにログイン

  1. Agentアプリ内ログイン画面でLoginボタンをクリックします。

screenshot-20240804-173713.png

  1. ウェブブラウザが開くと、ログインページで認証情報を入力し、Continueボタンをクリックします。

QueryPie Web > Agent Login Page

QueryPie Web > Agent Login Page

  1. ログインが成功すると下記のようにログイン成功画面が表示されその後Agentに戻ります。

QueryPie Web > Agent Login Success Page

QueryPie Web > Agent Login Success Page

  1. Agent開きを明示的に実行して認証情報をAgentに伝達します。

Chrome - Agent App開きモーダル

Chrome - Agent App開きモーダル

エージェントでデータベース接続

  1. ログインが正常に完了されるとAgentアプリ内Databasesタブで権限のあるコネクションの接続情報を確認できます。
    接続するコネクションに割り当てられたPortをクリックすると、該当コネクションのProxy Credentials情報を確認できます。

Agent > DB Connection Information

Agent > DB Connection Information

  1. 上記の接続情報を3rd Partyクライアントに入力するとDBコネクション接続が可能です。

3rd Party Clientを利用したDBコネクション接続

3rd Party Clientを利用したDBコネクション接続

エージェントを通じたサーバー接続

ログインが正常に完了されるとAgentアプリ内Serverタブで権限のあるサーバーを確認できます。

1. サーバー役割選択

  • ユーザープロフィール領域下部のRoleボタンをクリックして希望する役割を選びOKボタンをクリックしてください。
  • Default役割選択時、Workflow > Server Access Request要求により割り当てられたサーバー権限を使用します。

Agent > Server > Select a Role

Agent > Server > Select a Role

役割が2個以上なら、Agentログイン後Server機能使用のために役割選択をまず完了しなければなりません。


2.Agentでサーバー接続

  • 接続するサーバーを右クリック後Open Connection withメニューを選択して、使用したいターミナルツールを選択します。

Agent > Server > Open Connection with

Agent > Server > Open Connection with

  • その後該当サーバーに接続可能なアカウントが複数あるなら、Account選択窓が開きます。
  • 使用したいアカウントを選択し必要時パスワードを入力した後、OKボタンをクリックしてセッションを開きます。

Agent > Server > Open New Session

Agent > Server > Open New Session

3. Seamless SSH設定

Seamless SSHとは既存ターミナル使用性をそのまま維持しながらQueryPieを通じてサーバーに接続できる機能です。次の方法で.sshフォルダにconfigファイルを作成して簡単にseamless SSH設定が可能です。

  1. ターミナルを開き、.sshフォルダに移動します。
$ cd .ssh
  1. sshフォルダでconfigファイルを作成するためviエディターを開きます。
$ vi config
  1. 下記の内容を入力後、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
  1. 以上で設定が完了します。Agent > Serverタブで役割を選択すると既存sshコマンドでサーバーに接続できます。
$ ssh deploy@{{Server Name}}

エージェントを通じたKubernetes接続

kubernetes-agent-access-flow.png

  • 権限を付与されたユーザーはエージェント実行時現在ポリシーに応じたkubeconfigファイルが自動で受信されます。
  • これを通じてKubernetes Client(kubectl、lens、k9sなど)ツールでKubernetes APIリソースにアクセスできます。
  • エージェントではアクセス可能なクラスターリストを表示し、各クラスターに適用されたポリシーを確認できます。
  • また設定メニューを通じてkubeconfigファイルの位置を確認および修正できます。

1. Kubernetes役割選択

ユーザープロフィール領域下部のRoleボタンをクリックすると役割選択モーダルが開きます。希望する役割を選びOKボタンをクリックしてください。

Agent > Kubernetes > Select a Role

Agent > Kubernetes > Select a Role

役割が2個以上なら、Agentログイン後Kubernetes機能使用のために役割選択をまず完了しなければなりません。

2. Policy照会

選択された役割に応じてアクセス可能なリソースが表示されます。各クラスター右側の🔍ボタンを押すとPolicy Informationポップアップウィンドウが現れ、ここで該当クラスターに適用されたポリシー目録を詳しく確認できます。

Agent > Policy Information

Agent > Policy Information

3. Kubeconfigパス設定

Agent設定メニューでKubeConfig PathボタンをクリックしてKubeconfigパス設定モーダルを開きます。

Agent > Settings > Configure Kubeconfig Path

Agent > Settings > Configure Kubeconfig Path

  • Path Configuration : Kubeconfigファイル保存パスをユーザーが指定できます。
    • 基本値は$HOME/.kube/querypie-kubeconfigです。
    • パスフィールド右側Uploadボタンを押すとローカルファイルパスを指定できるポップアップが現れます。

パス指定ポップアップ

パス指定ポップアップ

  • Where : 右側の🔽ボタンをクリックして希望するフォルダを指定します。
  • Save As : Kubeconfigファイルの名前を入力します。変更しないと基本値で適用されます。
  • Command Line : KUBECONFIG環境変数を宣言するためのコマンドラインを提供します。
  1. KUBECONFIG環境変数を初回設定する場合、コマンド行内のデフォルト”${KUBECONFIG}”値を使用前に”${HOME}/.kube/config”に変更しなければなりません。
export KUBECONFIG="${HOME}/.kube/config:${HOME}/.kube/querypie-kubeconfig"
  1. QueryPieで提供されたユーザー指定kubeconfigパスを変更した場合新パスで環境変数を再び宣言しなければなりません。
export KUBECONFIG="${KUBECONFIG}:<ユーザーが指定したパス>"
  1. より詳細なkubeconfigに対する内容は次のリンクを参照してください。
  1. Copyでコマンドラインをコピーしてクライアントに宣言しコンテキストをアクセス可能なクラスターにスイッチできます
export KUBECONFIG="${KUBECONFIG}:${HOME}/.kube/querypie-kubeconfig"

QueryPie Agentセッティング初期化

セッティングを初期化すると入力したQueryPie Host情報が初期化されて再び入力できるようになります。

Agent内設定メニューで初期化

プロフィール領域右側⚙️ボタンをクリックして設定メニューを開きます。Reset All Settingsボタンをクリックします。

Agent > Settings

Agent > Settings

(Mac) メニューバー内アプリメニューで初期化

メニューバーでQueryPie Agentアイコンをクリックしてアプリメニューを開きます。Reset All Settingsボタンをクリックします。

Agent > App menu

Agent > App menu

Last updated on