SNMP での監視
GitHub Enterpriseは、SNMP経由でディスクの使用や CPU の使用率、メモリーの使用などのデータを提供します。
SNMP とは、ネットワーク経由でデバイスを監視するための一般的基準です。 GitHub Enterprise Server インスタンスのj状態を監視可能にし、いつホストのマシンにメモリやストレージ、処理能力を追加すべきかを知るために、SNMP を有効にすることを強くおすすめします。
GitHub Enterprise には標準の SNMP がインストールされているので、Nagios などのモニタリングシステムに対して利用可能な数多くのプラグインを活用できます。
SNMP v2c を設定
-
In the upper-right corner of any page, click .
-
左サイドバーで [Management Console] をクリックします。
-
In the left sidebar, click Monitoring.
-
Under "Monitoring", select Enable SNMP.
-
Community string の欄では、新しいコミュニティ文字列を入力する。 空白のままだと、
public
という設定になります。 -
Under the left sidebar, click Save settings.
-
SNMP に対応している別のワークステーションで次のコマンドを実行して、SNMP のコンフィグレーションをテストする。
# community-string is your community string # hostname is the IP or domain of your Enterprise instance $ snmpget -v 2c -c community-string -O e hostname hrSystemDate.0
This should return the system time on GitHub Enterprise Server インスタンス host.
User-based security
If you enable SNMP v3, you can take advantage of increased user based security through the User Security Model (USM). For each unique user, you can specify a security level:
noAuthNoPriv
: This security level provides no authentication and no privacy.authNoPriv
: This security level provides authentication but no privacy. アプライアンスを照会するには、ユーザ名とパスワード (最低 8 文字) が必要です。 SNMPv2 と同様に、情報は暗号化されずに送信されます。 可能な認証プロトコルは MD5 または SHA であり、デフォルトは SHA です。authPriv
: This security level provides authentication with privacy. 8 文字以上の認証パスワードを含む認証が必要であり、返信は暗号化されます。 プライバシーパスワードは必須ではありませんが、指定する場合は 8 文字以上でなければなりません。 プライバシーパスワードが指定されない場合は、認証パスワードが使用されます。 プライバシープロトコルは DES または AES のいずれかが可能であり、デフォルトは AES です。
Configuring users for SNMP v3
-
In the upper-right corner of any page, click .
-
左サイドバーで [Management Console] をクリックします。
-
In the left sidebar, click Monitoring.
-
Under "Monitoring", select Enable SNMP.
-
Select SNMP v3.
-
In "Username", type the unique username of your SNMP v3 user.
-
In the Security Level dropdown menu, click the security level for your SNMP v3 user.
-
For SNMP v3 users with the
authnopriv
security level:-
[Authentication password](認証パスワード)に、認証パスワードを入力してください。
-
On the right side of "Authentication password", in the Protocol dropdown menu, click the authentication protocol you want to use.
-
-
For SNMP v3 users with the
authpriv
security level:-
[Authentication password](認証パスワード)に、認証パスワードを入力してください。
-
On the right side of "Authentication password", in the Protocol dropdown menu, click the authentication protocol you want to use.
-
Optionally, in "Privacy password", type the privacy password.
-
On the right side of "Privacy password", in the Protocol dropdown menu, click the privacy protocol method you want to use.
-
-
Click Add user.
-
Under the left sidebar, click Save settings.
Querying SNMP data
Both hardware and software-level information about your appliance is available with SNMP v3. Due to the lack of encryption and privacy for the noAuthNoPriv
and authNoPriv
security levels, we exclude the hrSWRun
table (1.1.3.6.1.2.1.25.41) from the resulting SNMP reports. We include this table if you're using the authPriv
security level.
SNMP v2c では、アプライアンスに関するハードウェアレベルの情報のみが利用できます。 GitHub Enterprise 内のアプリケーションとサービスには、メトリックスを報告するように設定された OID がありません。 Several MIBs are available, which you can see by running snmpwalk
on a separate workstation with SNMP support in your network:
# community-string is your community string
# hostname is the IP or domain of your Enterprise instance
$ snmpwalk -v 2c -c community-string -O e hostname
SNMP に対して利用可能な MIB のうち、最も有用なものは HOST-RESOURCES-MIB
(.1.3.6.1.2.1.25) です。 この MIB のいくつかの重要なオブジェクトについては、以下の表を参照してください:
名前 | OID | 説明 |
---|---|---|
hrSystemDate.2 | .1.3.6.1.2.1.25.1.2 | ホストから見たローカルの日付と時間。 |
hrSystemUptime.0 | .1.3.6.1.2.1.25.1.1.0 | 前回ホストが起動してからの時間。 |
hrMemorySize.0 | .1.3.6.1.2.1.25.2.2.0 | ホストが持っているRAMの容量。 |
hrSystemProcesses.0 | .1.3.6.1.2.1.25.1.6.0 | 現在、ホストでロードされている、または作動しているプロセスのコンテキストの数。 |
hrStorageUsed.1 | .1.3.6.1.2.1.25.2.3.1.6.1 | hrStorageAllocationUnits のホストの使用ストレージ領域。 |
hrStorageAllocationUnits.1 | .1.3.6.1.2.1.25.2.3.1.4.1 | hrStorageAllocationUnit のバイトでのサイズ |
たとえば、SNMP v3 で hrMemorySize
を照会するには、ネットワークで SNMP をサポートしている別のワークステーションで次のコマンドを実行します:
# username はあなたの SNMP v3 ユーザの一意のユーザ名
# auth password は認証パスワード
# privacy password はプライバシーパスワード
# hostname はあなたの Enterprise インスタンスの IP またはドメイン
$ snmpget -v 3 -u username -l authPriv \
-A "auth password" -a SHA \
-X "privacy password" -x AES \
-O e hostname HOST-RESOURCES-MIB::hrMemorySize.0
SNMP v2c で hrMemorySize
を照会するには、ネットワークで SNMP をサポートしている別のワークステーションで次のコマンドを実行します:
# community-string はあなたのコミュニティ文字列
# hostname はあなたの Enterprise インスタンスの IP またはドメイン
snmpget -v 2c -c community-string hostname HOST-RESOURCES-MIB::hrMemorySize.0
メモ: アプライアンスで実行中のサービスに関する情報の漏洩を防ぐために、SNMP v3 でセキュリティレベル authPriv
を使用していない限り、結果の SNMP レポートから hrSWRun
の表 (1.1.3.6.1.2.1.25.41) は除外されます。 セキュリティレベル authPriv
を使用している場合は、hrSWRun
の表が掲載されます。
SNMP での一般的なシステム属性に対する OID マッピングの詳しい情報については、「CPU、メモリ、ディスクの統計情報に対する Linux SNMP OID」を参照してください。