SNMP とは、ネットワーク経由でデバイスを監視するための一般的基準です。 your GitHub Enterprise Server instanceのj状態を監視可能にし、いつホストのマシンにメモリやストレージ、処理能力を追� すべきかを知るために、SNMP を有効にすることを強くおすすめします。
GitHub Enterprise には標準の SNMP がインストールされているので、Nagios などのモニタリングシステ� に対して利用可能な数多くのプラグインを活用できます。
SNMP v2c を設定
-
From an administrative account on GitHub Enterprise Server, in the upper-right corner of any page, click .
-
If you're not already on the "Site admin" page, in the upper-left corner, click Site admin.
-
左のサイドバーでManagement Consoleをクリックしてく� さい。
-
左のサイドバーでMonitoring(モニタリング)をクリックしてく� さい。
-
"Monitoring(モニタリング)"の下で、Enable SNMP(SNMPの有効化)を選択してく� さい。
-
Community string の欄では、新しいコミュニティ文字列を入力する。 空白のまま� と、
public
という設定になります。 -
左のサイドバーの下でSave settings(設定の保存)をクリックしてく� さい。
Note: Saving settings in the Management Console restarts system services, which could result in user-visible downtime.
-
設定が完了するのを待ってく� さい。
-
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
これにより、your GitHub Enterprise Server instance ホストでのシステ� 時刻が返されます。
ユーザベースのセキュリティ
SNMP v3 を有効にすると、ユーザセキュリティモデル (USM) により、強化されたユーザベースのセキュリティを利用できます。 ユーザごとに、以下のセキュリティレベルを指定できます:
noAuthNoPriv
: このセキュリティレベルは認証もプライバシーも提供しません。authNoPriv
: このセキュリティレベルは認証を提供しますがプライバシーは提供しません。 アプライアンスを照会するには、ユーザ名とパスワード (最低 8 文字) が必要です。 SNMPv2 と同様に、情� �は暗号化されずに送信されます。 可能な認証プロトコルは MD5 または SHA であり、デフォルトは SHA です。authPriv
: このセキュリティレベルはプライバシーと共に認証を提供します。 8 文字以上の認証パスワードを含む認証が必要であり、返信は暗号化されます。 プライバシーパスワードは必� �ではありませんが、指定する� �合は 8 文字以上でなければなりません。 プライバシーパスワードが指定されない� �合は、認証パスワードが使用されます。 プライバシープロトコルは DES または AES のいずれかが可能であり、デフォルトは AES です。
SNMP v3 用にユーザーを設定する
-
From an administrative account on GitHub Enterprise Server, in the upper-right corner of any page, click .
-
If you're not already on the "Site admin" page, in the upper-left corner, click Site admin.
-
左のサイドバーでManagement Consoleをクリックしてく� さい。
-
左のサイドバーでMonitoring(モニタリング)をクリックしてく� さい。
-
"Monitoring(モニタリング)"の下で、Enable SNMP(SNMPの有効化)を選択してく� さい。
-
[SNMP v3] を選択します。
-
[Username] に、SNMP v3 ユーザの固有なユーザ名を入力します。
-
[Security Level] ドロップダウンメニューで、SNMP v3 ユーザ ー用のセキュリティレベルをクリックします。
-
セキュリティレベルが
authnopriv
である SNMP v3 ユーザの� �合:- [Authentication password](認証パスワード)に、認証パスワードを入力してく� さい。
- "Authentication password(認証パスワード)"の左で、Protocol(プロトコル)ドロップダウンメニューから、使いたい認証プロトコルをクリックしてく� さい。
-
セキュリティレベルが
authpriv
である SNMP v3 ユーザの� �合:- [Authentication password](認証パスワード)に、認証パスワードを入力してく� さい。
- "Authentication password(認証パスワード)"の左で、Protocol(プロトコル)ドロップダウンメニューから、使いたい認証プロトコルをクリックしてく� さい。
- 任意で、[Privacy password] にプライバシーパスワードを入力します。
- [Privacy password] の右側にある [Protocol] ドロップダウンメニューで、使用するプライバシープロトコル方式をクリックします。
-
[Add user] をクリックします。
-
左のサイドバーの下でSave settings(設定の保存)をクリックしてく� さい。
Note: Saving settings in the Management Console restarts system services, which could result in user-visible downtime.
-
設定が完了するのを待ってく� さい。
SNMP データの照会
アプライアンスに関するハードウェアレベルとソフトウェアレベルの両方の情� �が SNMP v3 で利用できます。 noAuthNoPriv
と authNoPriv
のセキュリティレベルでは暗号化とプライバシーが� 如しているため、結果の SNMP レポートから hrSWRun
の表 (1.3.6.1.2.1.25.4) は除外されます。 セキュリティレベル authPriv
を使用している� �合は、この表が掲載されます。 詳しい情� �については、「OID のリファレンスドキュメンテーション」を参照してく� さい。
SNMP v2c では、アプライアンスに関するハードウェアレベルの情� �のみが利用できます。 GitHub Enterprise 内のアプリケーションとサービスには、メトリックスを� �告するように設定された OID がありません。 いくつかの MIB が利用できます。ネットワーク内において SNMP をサポートしている別のワークステーションで snmpwalk
を実行することで、利用できる MIB を確認できます。
# 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.3.6.1.2.1.25.4) は除外されます。 セキュリティレベル authPriv
を使用している� �合は、hrSWRun
の表が掲載されます。
SNMP での一般的なシステ� 属性に対する OID マッピングの詳しい情� �については、「CPU、メモリ、ディスクの統計情� �に対する Linux SNMP OID」を参照してく� さい。