Postgres はありますが、それをどうすればよいかわかりません (c)

これは、かつて Postgres についての質問を私に持ちかけた友人の XNUMX 人からの引用です。 それから私たちは数日で彼の問題を解決し、彼は私に感謝しながらこう付け加えました。「馴染みの DBA がいて良かったです。」

しかし、DBA を知らない場合はどうすればよいでしょうか? 友達同士で友達を探すことから自分で質問を研究することまで、答えの選択肢は非常にたくさんあります。 しかし、どんな答えが思い浮かぶにせよ、良い知らせがあります。 テスト モードでは、Postgres とその周辺すべてに対するレコメンデーション サービスを開始しました。 これは何でしょうか、そして私たちはどのようにしてこのように生きるようになったのでしょうか?

なぜこれだけなのですか?

Postgres は少なくとも簡単ではなく、場合によっては非常に困難です。 関与の程度と責任に応じて異なります。

運用担当者は、サービスとしての Postgres が適切かつ安定して動作することを確認する必要があります。リソースの使用率、可用性、構成の適切性を監視し、定期的に更新と定期的なヘルスチェックを実行します。 一般的に、アプリケーションを開発して作成する人は、アプリケーションがデータベースとどのようにやり取りするのか、またデータベースをダウンさせる可能性のある緊急事態が発生しないように監視する必要があります。 運悪くテクニカル リード/テクニカル ディレクターになれてしまった人は、Postgres 全体が確実に予測どおりに動作し、問題が発生しないことが重要ですが、長期間 Postgres に深く入り込まないことをお勧めします。 。

これらのいずれの場合でも、あなたと Postgres が存在します。 Postgres を適切に使用するには、Postgres をよく理解し、それがどのように機能するかを理解する必要があります。 Postgres が直接の専門分野ではない場合は、その学習にかなりの時間を費やすことができます。 理想的には、時間と希望があるときに、どこから始めて、どのように、どこに移動するかが必ずしも明確であるとは限りません。

理論的には運用が容易になるはずのモニタリングが導入されたとしても、専門知識の問題は未解決のままです。 グラフを読んで理解できるようにするには、Postgres の仕組みをよく理解する必要があります。 そうしないと、監視は悲しい写真や、XNUMX 日のランダムな時間にアラートからのスパムに変わります。

武器 Postgres を使いやすくするために作られただけです。 このサービスは Postgres に関するデータを収集および分析し、改善できる点についての推奨事項を作成します。

このサービスの主な目的は、何が起こっているのか、次に何をする必要があるのか​​を示す明確な推奨事項を提供することです。

専門知識を持たない専門家にとって、推奨事項は高度なトレーニングの出発点となります。 高度な専門家向けに、注意すべき点を推奨事項に示します。 この点において、Weaponry は、特別な注意が必要な問題や欠点を見つけるための日常的なタスクを実行するアシスタントとして機能します。 兵器は、Postgres をチェックして欠陥を指摘するリンターに例えることができます。

今はどうですか?

現時点では、 武器 はテストモードであり、無料のため、登録は一時的に制限されています。 私たちは数人のボランティアと協力して、戦闘基地に近い場所での推奨エンジンを完成させ、誤検知を特定し、推奨文の作成に取り組んでいます。

ちなみに、推奨事項は依然として非常に単純です。追加の詳細はなく、何をすべきか、どのように行うかを示すだけです。そのため、最初は関連リンクをたどるか、Googleで検索する必要があります。 チェックと推奨事項には、システムとハードウェアの設定、Postgres 自体の設定、内部スキーマ、および使用されるリソースが含まれます。 計画に追加しなければならないことがまだたくさんあります。

そしてもちろん、サービスを試してフィードバックを提供してくれるボランティアも募集しています。 私たちも持っています デモ、中に入って見ることができます。 これが必要であることを理解し、試してみる準備ができている場合は、次のアドレスまでご連絡ください。 郵便.

2020年09月16日に更新されました。 はじめる。

登録後、ユーザーはプロジェクトを作成するように求められます。これにより、データベース インスタンスをグループに結合できるようになります。 プロジェクトを作成した後、ユーザーはエージェントの構成とインストールの手順に案内されます。 簡単に言うと、エージェントのユーザーを作成し、エージェントのインストール スクリプトをダウンロードして実行する必要があります。 シェルコマンドでは次のようになります。

psql -c "CREATE ROLE pgscv WITH LOGIN SUPERUSER PASSWORD 'A7H8Wz6XFMh21pwA'"
export PGSCV_PG_PASSWORD=A7H8Wz6XFMh21pwA
curl -s https://dist.weaponry.io/pgscv/install.sh |sudo -E sh -s - 1 6ada7a04-a798-4415-9427-da23f72c14a5

ホストに pgbouncer がある場合は、エージェントに接続するためのユーザーも作成する必要があります。 pgbouncer でユーザーを構成する具体的な方法は非常に多様であり、使用される構成に大きく依存します。 一般的に、セットアップはユーザーを追加することになります。 統計_ユーザー 設定ファイル (通常は pgbouncer.ini) パラメータで指定されたファイルにパスワード (またはそのハッシュ) を書き込みます。 認証ファイル。 stats_users を変更した場合は、pgbouncer を再起動する必要があります。

install.sh スクリプトは、プロジェクトごとに固有のいくつかの必須引数を受け取り、環境変数を通じて作成されたユーザーの詳細を受け取ります。 次に、スクリプトはブートストラップ モードでエージェントを起動します。エージェントは自身を PATH にコピーし、詳細を含む構成と systemd ユニットを作成し、systemd サービスとして起動します。
これでインストールは完了です。 数分以内に、データベース インスタンスがインターフェイスのホストのリストに表示され、最初の推奨事項を確認できるようになります。 ただし、重要な点は、多くの推奨事項には大量の蓄積されたメトリクス (少なくとも XNUMX 日あたり) が必要であるということです。

出所: habr.com

コメントを追加します