PerconaデータベースパフォーマンスモニターをDockerでデプロイする方法 - TechRepublic

PerconaデータベースパフォーマンスモニターをDockerでデプロイする方法 - TechRepublic
コンピュータプログラミング、ソフトウェアやゲームの開発の概念
画像: Yaran/Adobe Stock

データベース管理者の責務の一つは、データベースのパフォーマンスを監視することです。しかし、どうすれば良いのでしょうか?数多くのオープンソースプロジェクトのおかげで、このタスクを管理する方法は数多くあります。その一つが、Percona Monitoring and Management システムです。このシステムには以下の機能があります。

  • MySQL、MariaDB、PostgreSQL、MongoDB、ProxySQL のサポート
  • ACID準拠
  • マルチバージョン同時実行制御
  • トリガー、ビュー、サブクエリ、ストアド プロシージャなどのサポート
  • InnoDB リソース グループのサポート
  • MySQL/MariaDB の InnoDB、XtraDB、MyRocks ストレージ エンジンと、MongoDB の WiredTire、MMAPv1、InMemory、RocksDB をサポートします。
  • SQLロール
  • クエリ分析とメトリクスの両方を監視する
  • 一般的なセキュリティ問題のチェックをサポート

参照: 採用キット: データベースエンジニア (TechRepublic Premium)

データベース パフォーマンス モニターが必要な場合、Percona がまさにあなたが探しているものかもしれません。ここでは、Docker を利用してこのシステムを起動して実行する方法を説明します。

Perconaを展開するために必要なもの

このデータベースパフォーマンスモニターを導入するために必要なのは、Dockerをサポートするマシンが少なくとも1台と、sudo権限を持つユーザーだけです。Ubuntu Server 22.04のインスタンスを2つ使用してデモを行います。準備ができたら、早速始めましょう。

Dockerのインストール方法

まず最初に、次のコマンドで公式 Docker リポジトリの GPG キーをインストールします。

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

次に、次のコマンドで公式 Docker リポジトリを追加します。

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

次のコマンドで必要な依存関係をインストールします。

sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release -y

最後に、Docker エンジンの最新バージョンをインストールします。

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io -y

次のコマンドでユーザーを docker グループに追加します。

sudo usermod -aG docker $USER

変更を有効にするには、ログアウトして再度ログインしてください。

Perconaの導入方法

まず、次のコマンドでデプロイメント用のボリュームを作成します。

docker create -v /srv --name pmm-data percona/pmm-server:latest /bin/true

次に、以下のコマンドで Percona をデプロイします。

docker run -d -p 8000:80 -p 8443:443 --volumes-from pmm-data --name pmm-server --restart always percona/pmm-server:latest

Perconaウェブインターフェースにアクセスする方法

ブラウザで https://SERVER:8443 にアクセスすると、Percona のウェブインターフェースにアクセスできるようになります。ここで、SERVER はホスティングサーバーの IP アドレスです。デフォルトの認証情報(admin/admin)を使用してログインする必要があります。

認証に成功すると、管理者ユーザーのパスワードを変更するように求められます。これはセキュリティのためだけでなく、Percona監視エージェントへの接続にも不可欠です。

Percona監視エージェントの導入方法

Perconaでデータベースサーバーのパフォーマンスを監視するには、それらのサーバーをモニターに接続する必要があります。そのためには、Dockerを使い続けます。そのためには、以下の3つの情報が必要です。

  • PerconaサーバーのIPアドレス
  • Perconaの管理者ユーザー名はadmin
  • 初回ログイン時に変更したPercona管理者ユーザーのパスワード

監視対象のデータベースサーバーにDockerがインストールされていることも確認する必要があります。これは先ほどと同じ手順で行えます。Dockerがインストールされている場合は、次のコマンドで最新のPercona pmm-clientをダウンロードしてください。

docker pull percona/pmm-client:2

次のようにして永続データ用のボリュームを作成します。

docker create --volume /srv --name pmm-client-data percona/pmm-client:2 /bin/true

最後に、次のコマンドを使用して PMM エージェントを展開します (展開に合わせて SERVER と PWORD を変更してください)。

docker run -d \
--rm \
--name pmm-client \
-e PMM_AGENT_SERVER_ADDRESS=SERVER \
-e PMM_AGENT_SERVER_USERNAME=admin \
-e PMM_AGENT_SERVER_PASSWORD=PWORD \
-e PMM_AGENT_SERVER_INSECURE_TLS=1 \
-e PMM_AGENT_SETUP=1 \
-e PMM_AGENT_CONFIG_FILE=config/pmm-agent.yaml \
--volumes-from pmm-client-data \
percona/pmm-client:2

ここで、SERVER は、先ほど展開したホスティング Percona 監視サーバーの IP アドレスであり、PWORD は管理者ユーザー用に作成した新しいパスワードです。

次のコマンドでクライアントをサーバーに接続できます。

docker exec pmm-client pmm-admin config --server-insecure-tls --server-url=https://admin:PWORD@SERVER:8443

ここで、PWORD は作成した管理者パスワード、SERVER は Percona サーバーの IP アドレスです。

出力には次のように表示されます。

Checking local pmm-agent status...

pmm-agent is running.
Registering pmm-agent on PMM Server…
Registered.
Configuration file /usr/local/percona/pmm2/config/pmm-agent.yaml updated.
Reloading pmm-agent configuration…
Configuration reloaded.
Checking local pmm-agent status…
pmm-agent is running.

この時点で、新しいノードが Percona ダッシュボードに表示されます (図 A )。

図A

新しいノードは、Percona で監視できます。

おめでとうございます!Dockerのおかげで、データベースパフォーマンスモニターが稼働するようになりました。Perconaの詳細については、こちらの公式ドキュメントをご覧ください。

Jack Wallen によるビジネス プロフェッショナル向けの最新のテクノロジー アドバイスをすべて知るには、YouTube で TechRepublic の How To Make Tech Work を購読してください。

Tagged: