新しいシステム リソースを割り当てるプロセスは、仮想化プラットフォームとリソースの種類によって異なります。 重要なシステムリソースのモニタリングとアラートは、必ず設定しておいてください。 詳しくは、「インスタンスを監視する」をご覧ください。
お使いの GitHub Enterprise Server インスタンスに参加するユーザーが増えるにつれて、ストレージ ボリュームのサイズを変更することが必要になる場合があります。 ストレージのリサイズに関する情報については、使用している仮想化プラットフォームのドキュメンテーションを参照してください。
要件と推奨事項
メモ
ストレージ ボリュームのサイズを変更するには、インスタンスをメンテナンス モードにします。 変更点を確認するには、指定されたIP アドレスからのアクセスを許可するように IP 例外リストを構成します。 詳しくは、「メンテナンスモードの有効化とスケジューリング」をご覧ください。
警告
Azure ディスクのディスク キャッシュ設定を変更すると、ターゲット ディスクがデタッチされて再アタッチされます。 ディスクが使用中の場合、実行中のサービスが中断され、データが破損する可能性があります。 ストレージ容量を増やしながらディスク キャッシュ設定を変更する場合は、アプライアンスを必ずシャットダウンしてください。
最小推奨要件
| ユーザー ライセンス | x86-64 vCPUs | メモリ | ルート ストレージ | アタッチされた (データ) ストレージ | IOPS |
|---|---|---|---|---|---|
| トライアル、デモ、あるいは10人の軽量ユーザ | 4 | 32 GB | 400 GB | 500 GB | 600 |
| 最大 1,000 | 8 | 48 GB | 400 GB | 500 GB | 3000 |
| 1,000 から 3,000 | 16 | 64 GB | 400 GB | 1000 GB | 6000 |
| 3,000 から 5,000 | 32 | 128 GB | 400 GB | 1500 GB | 9000 |
| 5,000 から 8,000 | 48 | 256 GB | 400 GB | 3000 GB | 12000 |
| 8000-10000+ | 64 | 512 GB | 400 GB | 5000 GB | 15000 |
ルート ストレージとは、インスタンスのルート ディスクの合計サイズを指します。 ルート ファイルシステムで利用可能な領域は、ルート ディスクで利用可能なストレージの合計の 50% です。 詳しくは、「システムの概要」をご覧ください。
データパーティションサイズの増加
-
仮想化プラットフォームのツールを使用して、既存のユーザーボリュームのディスクのサイズを変更します。
-
お使いの GitHub Enterprise Server インスタンスに SSH 接続します。 インスタンスが複数のノードで構成されている場合は (高可用性や geo レプリケーションが構成されている場合など)、プライマリ ノードに SSH 接続します。 クラスターを使用する場合は、任意のノードに SSH 接続できます。 HOSTNAME をインスタンスのホスト名、またはノードのホスト名または IP アドレスに置き換えます。 詳しくは、「管理シェル (SSH) にアクセスする」をご覧ください。
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME -
アプライアンスをメンテナンスモードにしてください。 詳しくは、「メンテナンスモードの有効化とスケジューリング」をご覧ください。
-
アプライアンスを再起動して、新しいストレージ割り当てを検出します。
sudo reboot -
ghe-storage-extendコマンドを実行して、/data/userファイル システムを拡張します。ghe-storage-extend -
システム サービスが正しく機能していることを確認してから、メンテナンス モードを終了します。 詳しくは、「メンテナンスモードの有効化とスケジューリング」をご覧ください。
警告
ghe-storage-extend コマンド (または以前の自動チェック) でghe_user_data contains a file system with errors報告された場合は、サイズ変更を再試行する前にファイルシステムを修復する必要があります。 チェックが正常に完了するまで、 ghe-storage-extend を再実行しないでください。 回復手順については、 ファイルシステムエラーの修復を参照してください。
ファイルシステム エラーの修復
ghe-storage-extend中にファイルシステムのチェックが失敗した場合は、次の手順に従って修復します。
アプライアンスがメンテナンス モードであり、バックグラウンド ジョブが実行されていないことを確認します。
ghe-maintenance -s ghe-resque-info
ghe-maintenance -s
ghe-resque-info
-
ユーザー ボリュームを停止してアクティブ化してから、強制ファイルシステム チェックを実行します (自動応答はい)。
Shell sudo systemctl stop ghe-user-disk VGNAME=$(sudo lvs --noheadings -o vg_name | grep ghe_storage_ | awk '{ print $1 }') sudo vgchange -ay "$VGNAME" sudo vgscan --mknodes sudo fsck -fy /dev/mapper/${VGNAME}-ghe_user_datasudo systemctl stop ghe-user-disk VGNAME=$(sudo lvs --noheadings -o vg_name | grep ghe_storage_ | awk '{ print $1 }') sudo vgchange -ay "$VGNAME" sudo vgscan --mknodes sudo fsck -fy /dev/mapper/${VGNAME}-ghe_user_data -
サイズ変更を再試行します。
Shell ghe-storage-extend
ghe-storage-extend -
新しいサイズを再マウントして確認します。
Shell sudo systemctl start ghe-user-disk df -h /data/user
sudo systemctl start ghe-user-disk df -h /data/user -
再起動して確認します。
Shell sudo reboot df -h /data/user
sudo reboot df -h /data/user
新しいアプライアンスを使用したルートパーティションサイズの増加
-
現在のアプライアンスと同じバージョンを使用して、より大きなルート ディスクを持つ新しい GitHub Enterprise Server インスタンスを設定します。 詳しくは、「GitHub Enterprise Server インスタンスの設定」をご覧ください。
-
現在のアプライアンスをシャットダウンします。
sudo poweroff -
使用している仮想化プラットフォームのツールを使い、現在のアプライアンスからデータディスクをデタッチします。
-
大きなルートディスクを持つ新しいアプライアンスにデータディスクをアタッチします。
既存のアプライアンスを使用したルートパーティションサイズの増加
警告
ルート パーティション サイズを拡張するには、インスタンスをメンテナンス モードにする必要があります。 詳しくは、「メンテナンスモードの有効化とスケジューリング」をご覧ください。
-
目的のサイズの新しいディスクを GitHub Enterprise Server アプライアンスに接続します。
-
新しいディスクのデバイス名を確認するには、
lsblkコマンドを実行します。 -
先に進む前に、アプライアンスにグローバル一意識別子 (GUID) パーティション テーブル (
gpt) またはマスター ブート レコード (MBR) パーティション テーブル (dos) があるかどうかを確認します。 パーティション テーブルの種類は、 GitHub Enterprise Serverのリリース バージョンではなく、アプライアンスのルート ディスクが最初にプロビジョニングされた方法によって異なります。そのため、バージョンに基づいて想定するのではなく、常に直接確認してください。パーティション テーブルの種類を確認するには、次のコマンドを実行します。 結果は、
gptまたはdosになります。sudo lsblk -no pttype $(findmnt -no source /)- 結果が
gpt場合は、「 GUID パーティション テーブルのルート パーティション サイズを増やす」の手順に従います。 - 結果が
dos場合は、 MBR パーティション テーブルのルート パーティション サイズを増やす手順に従います。
- 結果が
GUID パーティション テーブルのルート パーティション サイズを増やす
-
既存の EFI ブート パーティションをバックアップします:
sudo dd if=/dev/disk/by-label/EFIBOOT of=EFIBOOT.bak bs=1M -
ディスクをフォーマットするには、
partedコマンドを実行します。/dev/xvdgを自分のデバイス名に置き換えます。sudo parted /dev/xvdg mklabel gpt sudo parted -a optimal /dev/xvdg mkpart bios fat32 1MiB 2MiB sudo parted /dev/xvdg set 1 bios_grub on sudo parted -a optimal /dev/xvdg mkpart efi fat32 2MiB 512MiB sudo parted /dev/xvdg set 2 esp on sudo parted -a optimal /dev/xvdg mkpart primary 512MiB 50% sudo parted /dev/xvdg set 3 boot off sudo parted /dev/xvdg set 3 esp off sudo parted -a optimal /dev/xvdg mkpart primary 50% 100% -
アプライアンスが高可用性または geo レプリケーション用に構成されている場合、レプリケーションを停止するには、各レプリカ ノード上で
ghe-repl-stopコマンドを実行します。ghe-repl-stop -
新しくパーティション分割されたディスクに GitHub Enterprise Server ソフトウェアをインストールするには、
ghe-upgradeコマンドを実行します。 PACKAGE-NAME.pkgは、アプライアンスで既に実行されているGitHub Enterprise Serverのバージョンに一致するプラットフォーム固有のアップグレード パッケージへのパスに置き換える必要があります。github-enterprise-2.11.9.hpkgなどのユニバーサル ホットパッチ アップグレード パッケージを使用することはできません。ghe-upgradeコマンドが完了すると、アプリケーション サービスは自動的に終了します。ghe-upgrade PACKAGE-NAME.pkg -s -t /dev/xvdg3 -
新しく追加されたディスクのセカンダリ パーティション上で次のコマンドを実行します:
sudo dd if=/dev/disk/by-label/EFIBOOT of=/dev/xvdg2 bs=1M sudo mkfs.ext4 -L fallback /dev/xvdg4 -
アプライアンスをシャットダウンします。
sudo poweroff -
ハイパーバイザーで、古いルートディスクを取り外し、古いルートディスクと同じ場所に新しいルートディスクを取り付けます。
-
アプライアンスを起動します。
-
システム サービスが正しく機能していることを確認してから、メンテナンス モードを終了します。 詳しくは、「メンテナンスモードの有効化とスケジューリング」をご覧ください。
アプライアンスが高可用性または geo レプリケーション用に構成されている場合は、すべてのノードのストレージがアップグレードされた後で、ghe-repl-start を使用して各レプリカ ノードでレプリケーションを開始してください。
MBRパーティションテーブル上のルートパーティションのサイズを増やす
-
ディスクをフォーマットするには、
partedコマンドを実行します。/dev/xvdgを自分のデバイス名に置き換えます。sudo parted /dev/xvdg mklabel msdos sudo parted /dev/xvdg mkpart primary ext4 0% 50% sudo parted /dev/xvdg mkpart primary ext4 50% 100% -
アプライアンスが高可用性または geo レプリケーション用に構成されている場合、レプリケーションを停止するには、各レプリカ ノード上で
ghe-repl-stopコマンドを実行します。ghe-repl-stop -
新しくパーティション分割されたディスクに GitHub Enterprise Server ソフトウェアをインストールするには、
ghe-upgradeコマンドを実行します。 PACKAGE-NAME.pkgは、アプライアンスで既に実行されているGitHub Enterprise Serverのバージョンに一致するプラットフォーム固有のアップグレード パッケージへのパスに置き換える必要があります。github-enterprise-2.11.9.hpkgなどのユニバーサル ホットパッチ アップグレード パッケージを使用することはできません。ghe-upgradeコマンドが完了すると、アプリケーション サービスは自動的に終了します。ghe-upgrade PACKAGE-NAME.pkg -s -t /dev/xvdg1 -
新しく追加されたディスクのセカンダリ パーティション上でコマンドを実行します:
sudo mkfs.ext4 -L fallback /dev/xvdg2 -
アプライアンスをシャットダウンします。
sudo poweroff -
ハイパーバイザーで、古いルートディスクを取り外し、古いルートディスクと同じ場所に新しいルートディスクを取り付けます。
-
アプライアンスを起動します。
-
システム サービスが正しく機能していることを確認してから、メンテナンス モードを終了します。 詳しくは、「メンテナンスモードの有効化とスケジューリング」をご覧ください。
アプライアンスが高可用性または geo レプリケーション用に構成されている場合は、すべてのノードのストレージがアップグレードされた後で、ghe-repl-start を使用して各レプリカ ノードでレプリケーションを開始してください。