ドキュメントには頻繁に更新が加えられ、その都度公開されています。本ページの翻訳はまだ未完成な部分があることをご了承ください。最新の情報については、英語のドキュメンテーションをご参照ください。本ページの翻訳に問題がある場合はこちらまでご連絡ください。

このバージョンの GitHub Enterprise はこの日付をもって終了となりました: 2021-03-02. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの改善、新機能のためには、最新バージョンのGitHub Enterpriseにアップグレードしてください。 アップグレードに関する支援については、GitHub Enterprise supportに連絡してください。

SNMP での監視

GitHub Enterpriseは、SNMP経由でディスクの使用や CPU の使用率、メモリーの使用などのデータを提供します。

ここには以下の内容があります:

SNMP とは、ネットワーク経由でデバイスを監視するための一般的基準です。 your GitHub Enterprise Server instanceのj状態を監視可能にし、いつホストのマシンにメモリやストレージ、処理能力を追加すべきかを知るために、SNMP を有効にすることを強くおすすめします。

GitHub Enterprise には標準の SNMP がインストールされているので、Nagios などのモニタリングシステムに対して利用可能な数多くのプラグインを活用できます。

SNMP v2c を設定

  1. From an administrative account on GitHub Enterprise Server, click in the upper-right corner of any page.
    サイトアドミン設定にアクセスするための宇宙船のアイコン
  2. 左のサイドバーでManagement Consoleをクリックしてください。
    左のサイドバーのManagement Consoleタブ
  3. 左のサイドバーでMonitoring(モニタリング)をクリックしてください。
    モニタリングタブ
  4. "Monitoring(モニタリング)"の下で、Enable SNMP(SNMPの有効化)を選択してください。
    SNMPを有効化するボタン
  5. Community string の欄では、新しいコミュニティ文字列を入力する。 空白のままだと、publicという設定になります。
    コミュニティ文字列型を追加するためのフィールド
  6. 左のサイドバーの下でSave settings(設定の保存)をクリックしてください。
    Management Console での [Save settings] ボタン
  7. 設定が完了するのを待ってください。
  8. 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 用にユーザーを設定する

  1. From an administrative account on GitHub Enterprise Server, click in the upper-right corner of any page.
    サイトアドミン設定にアクセスするための宇宙船のアイコン
  2. 左のサイドバーでManagement Consoleをクリックしてください。
    左のサイドバーのManagement Consoleタブ
  3. 左のサイドバーでMonitoring(モニタリング)をクリックしてください。
    モニタリングタブ
  4. "Monitoring(モニタリング)"の下で、Enable SNMP(SNMPの有効化)を選択してください。
    SNMPを有効化するボタン
  5. [SNMP v3] を選択します。
    SNMP v3 を有効化するボタン
  6. [Username] に、SNMP v3 ユーザの固有なユーザ名を入力します。
    SNMP v3 ユーザ名を入力するためのフィールド
  7. [Security Level] ドロップダウンメニューで、SNMP v3 ユーザ ー用のセキュリティレベルをクリックします。
    SNMP v3 ユーザのセキュリティレベルを指定するためのドロップダウンメニュー
  8. セキュリティレベルが authnopriv である SNMP v3 ユーザの場合:
    セキュリティレベル authnopriv の設定
    • [Authentication password](認証パスワード)に、認証パスワードを入力してください。
    • "Authentication password(認証パスワード)"の左で、Protocol(プロトコル)ドロップダウンメニューから、使いたい認証プロトコルをクリックしてください。
  9. セキュリティレベルが authpriv である SNMP v3 ユーザの場合:
    セキュリティレベル authpriv の設定
    • [Authentication password](認証パスワード)に、認証パスワードを入力してください。
    • "Authentication password(認証パスワード)"の左で、Protocol(プロトコル)ドロップダウンメニューから、使いたい認証プロトコルをクリックしてください。
    • 任意で、[Privacy password] にプライバシーパスワードを入力します。
    • [Privacy password] の右側にある [Protocol] ドロップダウンメニューで、使用するプライバシープロトコル方式をクリックします。
  10. [Add user] をクリックします。
    SNMP v3 ユーザを追加するボタン
  11. 左のサイドバーの下でSave settings(設定の保存)をクリックしてください。
    Management Console での [Save settings] ボタン
  12. 設定が完了するのを待ってください。
SNMP データの照会

アプライアンスに関するハードウェアレベルとソフトウェアレベルの両方の情報が SNMP v3 で利用できます。 noAuthNoPrivauthNoPriv のセキュリティレベルでは暗号化とプライバシーが欠如しているため、結果の SNMP レポートから hrSWRun の表 (1.1.3.6.1.2.1.25.41) は除外されます。 セキュリティレベル authPriv を使用している場合は、この表が掲載されます。

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.1hrStorageAllocationUnits のホストの使用ストレージ領域。
hrStorageAllocationUnits.1.1.3.6.1.2.1.25.2.3.1.4.1hrStorageAllocationUnit のバイトでのサイズ

たとえば、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」を参照してください。