本文へ移動
Microsoft Watch Japan Microsoft Corporation(MSFT)の製品、サービ...

GitHub Enterprise Server 3.21が一般提供:REST API 2026-03-10、Actions runner 2.331.0、OpenTelemetry既定化の確認ポイント

GitHub Enterprise Server 3.21が一般提供:REST API 2026-03-10、Actions runner 2.331.0、OpenTelemetry既定化の確認ポイントの判断ポイントを表す抽象サムネイル

GitHubは2026年6月11日、GitHub Enterprise Server 3.21の一般提供を告知しました。GHESを自社運用している管理者にとって、今回の更新は新機能を眺めるだけのリリースではありません。REST APIの新しいversion、self-hosted runnerの最低版、OpenTelemetry metricsの既定化、secret scanningやDependabotの権限設計まで、アップグレード前に見る場所がかなり多いリリースです。

本稿は2026年6月15日JST時点のGitHub公式情報をもとに、GHES 3.21.0を本番へ入れる前後で何を確認するかに絞ります。Microsoft Watch JapanはMicrosoftおよびGitHubとは非提携の独立サイトです。

  • GHES 3.21は、2026年6月11日のGitHub Changelogで一般提供が告知されたfeature releaseです。
  • 管理者は、3.19または3.20からのアップグレード条件、REST API 2026-03-10、Actions runner 2.331.0、OpenTelemetry既定化を先に棚卸しする必要があります。
  • Secret scanning、CodeQL、Dependabot、Actions policyの更新は便利機能として一括展開せず、組織単位で負荷と権限を見ながら段階導入するのが安全です。

まず見る順番は、現在バージョン、ステージング、runner、API統合、監視、セキュリティ設定です。月内のMicrosoft/GitHub更新をまとめて追う場合は、公開済みの<a href="https://msft-watch.blog.mo-gmo.com/monthly-topics-2026-06/">2026年6月重要トピックまとめ</a>も併せて確認してください。

GHES 3.21でまず何が変わったのか

Visual3.21確認マップGHES 3.21の変更を、管理者が最初に見る領域へ分けます。
Upgrade

3.19または3.20から3.21へ進めるか、現在version、patch level、staging、maintenance windowを確認します。

REST API

2026-03-10 versionとbreaking changesを、社内統合、GitHub Apps、外部SaaSごとに棚卸しします。

Runner

GitHub Actions runner 2.331.0をminimum application versionとして、runner fleetの更新順を確認します。

Observability

OpenTelemetry metricsのenabled化と、Collectd metrics依存の残り方を監視基盤ごとに確認します。

Security

Secret scanning、CodeQL、Dependabot、rulesets、Actions policyを、段階展開できる単位に分けます。

3.21は新機能一覧ではなく、Upgrade、API、Runner、Observability、Securityの確認順に直すと作業に落とし込みやすくなります。

GitHub Changelogは、GHES 3.21について「deployment efficiency、monitoring capabilities、code security、policy management」を強化するリリースとして紹介しています。見出しだけを見ると幅広い機能追加に見えますが、管理者が最初に押さえるべき項目は五つに絞れます。

最初に見る項目3.21での意味管理者の確認
アップグレード経路feature releaseとして3.19または3.20から上げる前提現在version、patch level、staging、maintenance window
REST API2026-03-10が利用可能になり、breaking changesを含むAPI version header、社内統合、GitHub Apps、外部SaaS
GitHub Actions runner3.21のminimum runner applicationが2.331.0ephemeral runner、自動更新停止、ARCやrunner group
OpenTelemetrymetricsがenabled、Collectdがdisabled by default監視dashboard、alert、Prometheus endpoint、外部監視
セキュリティ運用Secret scanning、CodeQL、Dependabot、Actions policyが拡張例外、担当割り当て、enterprise一括適用の負荷

根拠

GitHub Changelogのハイライトには、organization custom propertiesの一般提供、Projectsのhierarchy view一般提供、REST API version 2026-03-10、300 jobsを超えるActions workflow pageの表示改善、secret scanning governance、MySQLとrepository data向けmultiple data disksの一般提供が並びます。これらはどれも重要ですが、GHES管理者の記事としては「今すぐ使う機能」より先に「本番アップグレードの停止条件」を決めるべきです。

GA告知と実運用の間には準備がある

Changelogの日付は2026年6月11日です。Release notes側にも3.21.0の情報が掲載されています。ここで注意したいのは、一般提供が告知されたことと、自社のGHESをすぐ本番更新できることは別だという点です。

注意点

GHESはGitHub.comのSaaS更新とは違い、管理者がupgrade package、backup、snapshot、maintenance mode、post-upgrade taskを計画します。特に、社内統合やself-hosted runnerが多い環境では「本体だけ先に上げる」より、ステージングでrunner、API、監視を先に通すほうが手戻りを減らせます。

機能紹介より確認順に直す

Projects hierarchy viewやissue custom fieldsは、開発チームにとって分かりやすい改善です。一方で、運用リスクが大きいのはREST API、runner、OpenTelemetry、security configurationです。便利になった順ではなく、止まると困る順に見ていきます。

既にGitHub ActionsやCopilot code reviewのrunner運用を見直している組織は、公開済みの<a href="https://msft-watch.blog.mo-gmo.com/msft-50-github-copilot-code-review-org-runner-content-exclusion-custom-instructions/">Copilot code reviewのrunner設定記事</a>も参考になります。ただし、今回の3.21記事ではGitHub.comやGitHub Enterprise Cloudの設定ではなく、GHES本体のfeature releaseとして分けて考えます。

アップグレード判断は3.19/3.20から始める

Visual3.21 readiness flow現在の稼働状態から、3.21へ進める条件を順番に確認します。
  1. 1現在version

    本番instanceが3.19または3.20から3.21へ進める状態かを最初に確認します。

  2. 2Patch level

    最新patch release、既知不具合、security fixを見て、古いpatchのままfeature upgradeへ進まないようにします。

  3. 3Backup Utilities

    GHES本体との対応関係が、同versionまたは最大2つ先の範囲に収まるかを確認します。

  4. 4Staging

    staging、support bundle、maintenance window、rollback判断を先に揃えます。

  5. 5Known issues

    custom firewall rules、Admin stats REST API timeout、大規模security configurationの負荷、Actions同梱更新の不整合を作業表にします。

3.18以前にいる場合は、3.21へ直接進む前に中間のfeature releaseを挟む計画が必要です。

GHES 3.21へ進む前に、現在の本番versionを確認してください。GitHub Docsのupgrade requirementsでは、3.21へ上げるには、feature releaseとして少なくとも3.20または3.19からのアップグレードである必要があります。3.18以前にいる場合、3.21へ直接進む前に中間のfeature releaseを挟む計画が必要です。

まず現在versionとpatch levelを見る

アップグレード計画の起点は、リリース名ではなく現在の稼働状態です。

確認項目

確認対象見る理由止める条件
GHES本体version3.21へ直接上げられるかを判断するため3.18以前で中間計画がない
最新patch release既知不具合やsecurity fixを取り込むため古いpatchのまま本番feature upgradeへ進む
Backup UtilitiesGHES本体との対応関係を見るためbackup utilitiesが同versionまたは最大2つ先の範囲から外れる
background jobs複数upgradeを続ける場合の安全確認migrationやupgrade taskが完了していない
support window古いreleaseのサポート終了を避けるため廃止済みversionに残る計画になっている

停止条件

GitHub Docsは、複数のfeature upgradeを実行する場合、background migrationやupgrade taskが完全に終わってから次へ進むよう促しています。ghe-migrationsghe-check-background-upgrade-jobsで状態を確認する運用を、作業手順書に入れておくとよいでしょう。

ステージングとmaintenance windowを先に確保する

3.21はfeature releaseです。Patch releaseにhotpatchを当てる話とは分けてください。Upgrade requirementsではcapacity checkが必須で、upgrade packageを使う場合はend users向けのmaintenance windowを計画する必要があります。

確認項目

本番前のステージングで確認したい項目は次の通りです。

  • Data disk、root disk、CPU、memoryのpre-flight checkが通るか。
  • HA構成ではreplication statusがOKか。
  • Custom firewall rulesを再適用できる形で控えているか。
  • Backup snapshotとVM snapshotを直前に取得できるか。
  • Actions、Packages、Search、API、認証、通知、監視の基本動作が戻るか。

注意点

Upgrade overviewでは、feature releaseでdata migrationsを含む場合、storage performanceやdata量によって数時間のdowntimeが発生しうると説明されています。Patch release using upgrade packageは通常5分未満とされますが、feature releaseとは条件が違います。この差を社内告知に入れないと、利用者側の期待値がずれます。

Known issuesは該当環境の作業表にする

Release notesのKnown issuesは、読んで終わりにするより、該当する環境だけを作業表に落とすのが実務的です。3.21.0では、upgrade中にcustom firewall rulesが削除される点、Admin stats REST API endpointsが大規模applianceでtimeoutしうる点、大規模enterpriseでsecurity configurationを全repositoriesへ一括適用すると負荷が高くなる点などが挙がっています。

特にsecurity configurationは注意が必要です。Secret scanningやCode scanningをenterprise全体に一度に適用すると、全organizationにenablement jobsが同時投入され、大規模環境では性能劣化の可能性があります。GitHub Docsは大規模enterpriseではorganization levelで段階的に有効化することを勧めています。

REST API 2026-03-10は互換性棚卸しとして読む

VisualREST API移行棚卸し表新しいAPI versionを指定する前に、統合ごとの影響と期限を分けます。
項目内容見方
X-GitHub-Api-Version headerどの統合が2026-03-10を指定するのか、指定しないrequestがどのversionで動くのかを確認します。
2026-03-10calendar-based breaking-change versionとして、影響するREST API endpointsを公開前に再確認します。
2022-11-28既存統合の基準versionとして残る一方、retirement計画と検証期限を管理します。
GitHub Appsapp installation、権限、外部SaaS連携のownerを決め、統合ごとにテスト結果を残します。
Password authenticationREST APIのpassword authentication終了も、API version棚卸しと同じタイミングで確認します。

すべての統合が自動で新versionへ切り替わるわけではありません。2022-11-28のretirementは、2028-03-10後の次のEnterprise Server releaseで予定される扱いとして期限管理します。

GHES 3.21では、REST API version 2026-03-10が利用可能になります。Release notesはこれを、最初のcalendar-based breaking-change versionと説明しています。つまり、新しいAPI versionを指定すれば終わりではなく、統合ごとに影響を確認する必要があります。

2026-03-10はbreaking changesを含む

根拠

GitHubのREST APIは、X-GitHub-Api-Version headerでversionを指定します。3.21 release notesによると、2026-03-10は複数のREST API endpointsにbreaking changesを含みます。どのendpointが影響するかは、breaking changes docsで公開前に再確認してください。

注意点

本文で重要なのは、すべての統合が自動的に新versionへ切り替わるわけではない点です。Requests that do not specify the X-GitHub-Api-Version: 2026-03-10 header will continue to use 2022-11-28 version、とrelease notesは説明しています。既存統合がすぐ壊れるという読み方は正確ではありません。

2022-11-28は残るが、期限管理は始まる

一方で、2022-11-28はclosing down periodに入り、2028-03-10後の次のEnterprise Server releaseでretireされる計画です。これは「2028年3月10日に即停止」とは違いますが、長期保守の社内ツールを持つ組織にとっては十分に具体的な移行期限です。

確認項目

棚卸しの単位は、endpointではなく統合です。

統合の種類最初に見るもの影響が大きい失敗
社内管理スクリプトAPI version header、認証方式、owner管理処理の失敗、未処理のrepositoryやteam
CI/CD連携workflow内のAPI call、GitHub App permissionreleaseやdeployの停止
監査ログ収集pagination、schema、rate limit監査ログの欠落
SCIMやIAM連携user/group管理endpoint、権限provisioningのずれ
外部SaaS連携vendor側の対応version失敗時に自社で直せない

評価基準

読み取り系から新versionを試し、低リスクな書き込み系、管理者権限系へ進めるのが安全です。API response schema、HTTP status、pagination、permission error、audit logを比較し、影響が分かるまで全統合に一斉適用しないでください。

Password authenticationの終了も同じタイミングで見る

3.21 release notesのClosing downでは、GitHub APIsへのprogrammatic accessに対するpassword authenticationが、このversionからsupportedではなくなったと説明されています。Production appsはweb applications flowを使うべきで、PATは限定的なテストなどに使う位置づけです。

API version移行とpassword authentication終了は別の論点ですが、どちらも社内統合の棚卸しで一緒に見つかります。古いスクリプトがbasic password認証、古いPAT、version header未指定のまま残っていないかを、同じ台帳で確認するとよいでしょう。

Actions runner 2.331.0は本体アップグレード前に見る

VisualRunner upgrade matrixrunner fleetを種類ごとに分け、3.21前に必要な更新を確認します。
項目内容見方
Persistent self-hosted runner現在version、自動更新、OS/arch、代表workflowの成功条件を確認します。
Ephemeral self-hosted runnerautomatic updatesをdisabledにしている場合、GHES本体を3.21へ上げる前にrunner更新を計画します。
ARCscale set、runner image、network policy、controller側の更新順をrunner group単位で確認します。
Restricted networkdownload endpoint、proxy、証明書、許可先ネットワークを更新手順に含めます。
Workflow validationlarge workflow、skipped job log、case function、ternary operator、pull_request_target関連挙動をstagingで試します。

GitHub.comやGHECのrunner enforcementと、GHES 3.21のminimum runner application versionは別の確認として扱います。

GHES 3.21では、GitHub Actionsを有効化しているinstanceについて、self-hosted GitHub Actions runnerのminimum application versionが2.331.0になります。All releasesの表にも、3.21のminimum runner versionとして2.331.0が示されています。

Ephemeral runnerと自動更新停止環境は先に確認する

多くのinstanceではrunner applicationは自動更新されます。ただし、ephemeral self-hosted runnersを使い、automatic updatesをdisabledにしている環境では、GHES本体を3.21へ上げる前にrunnerを更新する必要があります。

確認項目

確認する台帳は、runner group単位で作ると見やすくなります。

Runner群事前確認3.21前の判断
persistent self-hosted runner現在version、自動更新、OS/arch自動更新で2.331.0へ届くか
ephemeral runnerimage内runner version、更新手順本体upgrade前にimage更新
ARC managed runnerscale set、label、network、imagestagingでworkflowを流す
restricted network runnerdownload経路、checksum、proxy手動配布手順を先に検証
legacy runnerowner、利用workflow、廃止可否更新不能なら利用停止計画

根拠

actions/runner v2.331.0 release notesには、case function support、DockerやBuildx更新、Node version更新、checksumsなどが含まれます。また、Actions Runnerはprogressive release policyに従うため、最新releaseがenterprise、organization、repositoryですぐ利用可能とは限らない、と明記されています。download instructionは自分の環境のrunner追加画面や公式手順で確認してください。

GitHub.com/GHECのrunner enforcementと混同しない

直近ではGitHub.comやGitHub Enterprise Cloud向けのself-hosted runner minimum version enforcementも話題になっています。公開済みの<a href="https://msft-watch.blog.mo-gmo.com/msft-49-github-actions-self-hosted-runner-minimum-version-enforcement/">self-hosted runner最低版適用の記事</a>ではData ResidencyやEnterprise Cloudのスケジュールを扱いました。

今回のGHES 3.21で見る2.331.0は、GHES releaseごとのminimum runner versionです。名前は似ていますが、対象環境と判断軸が違います。社内説明では「GitHub.com側の期限」と「GHES 3.21に必要なrunner version」を分けて書いてください。

Actionsのセキュリティ変更も同時に試す

3.21のGitHub Actions関連では、workflow pagesが300 jobsを超える大規模workflowをlazy loadingで扱えるようになり、job status filterも使えるようになります。Release notesには、skipped jobのlogにif: conditionalがどう評価されたか表示される変更、Expressionsのcase functionやternary operator、private .github repositoryにorganization workflow templatesを置ける変更もあります。

セキュリティ面では、pull_request_target eventでworkflow filesとcheckout commitがrepository default branchから取得されるようになる変更が重要です。これは安全側の改善として読めますが、secretやenvironmentへのアクセス設計を不要にするものではありません。Bot作成PRの承認運用を確認する場合は、公開済みの<a href="https://msft-watch.blog.mo-gmo.com/msft-51-github-actions-bot-created-pr-workflows-approval-github-token/">github-actions[bot]とGITHUB_TOKENの記事</a>も合わせて読むと、承認ゲートとworkflow実行の分離が見えやすくなります。

OpenTelemetry既定化は監視移行の入口にする

VisualMonitoring migration flowCollectd依存の棚卸しから、OpenTelemetry前提の監視確認へ進めます。
  1. 1Collectd inventory

    Collectd receiver、Prometheus scrape設定、Grafana dashboard、alert ruleの残り方を確認します。

  2. 2OpenTelemetry metrics

    3.21でOpenTelemetry metricsがenabledになる前提で、metric名、SLO、runbookを照合します。

  3. 3Prometheus endpoint

    外部監視をPrometheus endpointで受けるのか、custom pipelineで受けるのかを分けます。

  4. 4Dashboard and alert

    OpenTelemetry側で必要なdashboard、alert、retention、監視データの保存期間を確認します。

  5. 53.23 readiness

    Collectd metrics stackのretire予定を見据えて、3.21の時点で移行の予行演習にします。

3.21でOpenTelemetryを確認することは、3.23へ向けた監視移行の準備にもなります。

3.21 release notesでは、GitHub Enterprise Server 3.21からOpenTelemetry metricsがenabled、Collectd metricsがdisabled by defaultになると説明されています。新規インストールだけでなく、アップグレードでもOpenTelemetry metricsがenabledになります。

Collectd依存を3.23前に洗い出す

Closing downには、Collectd metrics stackがGHES 3.23からretireされる予定も記載されています。つまり、3.21でOpenTelemetryを確認することは、3.23へ向けた監視移行の予行演習です。

確認項目

棚卸しでは、次を確認してください。

  • Collectd receiverやPrometheus scrape設定が残っているか。
  • Grafana dashboardやalert ruleがCollectd前提になっていないか。
  • SLOやrunbookで使うmetric名がOpenTelemetry側で再現できるか。
  • 監視データのretentionを何日にするか。
  • 外部監視へ送る場合、network bandwidth、TLS、認証、IP allowlistをどうするか。

評価基準

OpenTelemetry設定Docsは、collection frequency、data retention、custom exporters、network bandwidthが負荷に影響すると説明しています。Metrics dataはdefaultで30 days retainedとされ、Management Consoleまたはcommand lineでretentionを変更できます。長く残せば安心、短くすれば軽い、という単純な話ではなく、障害調査に必要な期間とstorage負荷を合わせて決めるべきです。

外部監視はPrometheus endpointかcustom pipelineで分ける

External monitoring docsは、OpenTelemetry metricsを外部監視に渡す方法として二つを示しています。既存のPrometheus基盤があるならPrometheus endpoint、複数監視先へpushしたい、変換やfilterを挟みたい、OTLPを好むcloud-native monitoringへ送るならcustom OpenTelemetry pipelinesです。

条件

Prometheus endpointは、https://[hostname]:8010/metricsでmetricsを出し、ghes-metrics usernameと設定したpasswordで認証します。Trusted IPv4/IPv6 addressesやCIDR blocksによるアクセス制御も用意されています。設定保存時にはsystem services restartによりuser-visible downtimeが起きうるため、本番変更はmaintenance作業として扱ってください。

注意点

Custom OpenTelemetry pipelinesは、default observability stackにadditiveな構成として使います。Docsは、reserved pathsである/ghes/internalを使わないこと、本番前に非本番環境で十分テストすること、追加pipelineがCPUやmemory consumptionを増やす可能性があることを注意点に挙げています。

セキュリティとガバナンス変更は一括適用しない

VisualSecurity rollout matrix強い設定を全社一括で入れる前に、例外、担当者、展開単位を分けます。
Secret scanning

push protection enforcementのexempt actorは、trusted automationと一般ユーザーを分けて扱います。

Code scanning

alertをdismissまたはreopenできる人、assigneesの追加・削除、alert ownerを確認します。

Dependabot

security campaignやalert担当者を、repository owner、security team、運用担当で分けます。

Enterprise configuration

enterprise-wide security configurationは、organization単位やrepository群ごとに段階展開します。

Actions policy

allowed actions、reusable workflows、rulesetsを、例外処理と監査ログまで含めて確認します。

セキュリティ設定は強ければよいという話ではなく、例外を誰が扱い、alertを誰が閉じ、どの単位で展開するかが重要です。

GHES 3.21はcode securityとpolicy managementにも多くの更新を含みます。ここで大事なのは、強い設定を全社一括で入れることではなく、誰が例外を扱い、誰がalertを閉じ、どの単位で展開するかを決めることです。

Secret scanningは例外と一般ユーザーを分ける

Release notesでは、organization ownersとenterprise administratorsが、secret scanning push protection enforcementから特定のroles、teams、GitHub Appsをexempt actorとして指定できるようになったと説明されています。Migration botやservice accountのようなtrusted automationでは有効ですが、一般ユーザーのpush protectionを弱める話ではありません。

根拠

Fine-grained permissionsの改善もあります。Alertをdismissまたはreopenできる人がassigneesを追加・削除できること、alert assigneesがresolveなどの変更を行えること、enterprise teams、roles、appsをbypass reviewersに追加できること、enterprise ownersやenterprise security managersが任意のcustom patternsを編集できることが含まれます。

注意点

例外管理では、actor、理由、期限、対象repository、再評価日、監査ログの見方を必ず残してください。例外を作るほど便利になりますが、棚卸しなしの例外は、push protectionを静かにすり抜ける経路にもなります。

CodeQLとDependabotは担当者割り当てを見る

3.21にはCodeQL 2.24.3が同梱されます。Release notesには、Java 26、Kotlin 2.3.10まで、.NET 10とC# 14、Go 1.26、Swift 6.2.2/6.2.3、新しいPython向けprompt injection queryなどが挙がっています。言語対応そのものは開発チームの関心ですが、GHES管理者が見るべき中心は、code scanning alertsを誰に割り当て、どう通知し、どう閉じるかです。

確認項目

Dependabotでも、alertsをspecific usersに割り当てる運用、delegated dismissal controls、monorepoでのversion updates grouping、pre-commit、OpenTofu、uv、private registries向けOIDC authenticationなどが入ります。どの機能を使うかより前に、alert owner、dismiss権限、例外理由、再オープン条件、SLAを決めると、セキュリティ更新が「通知が増えただけ」で終わりにくくなります。

Enterprise-wide security configurationは段階展開にする

Known issuesで明記されている通り、大規模enterpriseでenterprise security configurationを全repositoriesへ一括適用すると、各organizationへenablement jobsが同時投入され、system loadが大きくなる可能性があります。大規模環境ではorganization levelでincrementalに有効化し、system performanceを監視しながら広げる方針が現実的です。

段階展開の確認項目

設定領域先に決めること一括適用のリスク
Secret scanning対象repo、bypass reviewer、exempt actor大量job、例外管理の漏れ
Code scanningdefault setup、alert owner、CodeQL version大量analysis、通知過多
Dependabotecosystem、grouping、private registry authPR増加、owner不明
Actions policyallowed actions、reusable workflows、SHA pinning既存workflow停止
Rulesetsbypass actor、対象branch、例外期限正常なrelease作業の停止

「3.21にしたから全社で全部オンにする」ではなく、代表organization、重要repository、影響が小さいrepositoryの順で広げるのがよいでしょう。

インフラ構成の変更は自社トポロジーで読む

VisualTopology applicability tableインフラ関連の変更を、standalone、high availability、clusterの条件で読み分けます。
項目内容見方
Multiple data disksMySQLとrepository dataをhostするための複数data disksを、standaloneとhigh availabilityで確認します。
Dedicated log disk/var/logをroot diskから分離する構成として、standaloneとhigh availabilityへの適用条件を確認します。
Cluster topologydedicated log diskなど、cluster topologyに適用されない変更を混同しないようにします。
HA additional nodes追加nodesは実測、容量、障害時の運用手順がある場合に検討します。
Custom firewall rules既存のcustom firewall rulesを控え、アップグレード後に意図せず消えた設定がないか確認します。

deployment efficiencyに効く変更ほど、自社のtopologyに当てはめて読まないと適用可否を誤りやすくなります。

3.21には、deployment efficiencyに効くインフラ関連の変更もあります。ここは、自社のtopologyに当てはめて読まないと誤解しやすい部分です。

Multiple data disksとdedicated log diskを見る

MySQLとrepository dataをhostするためのmultiple data disksは、GHES 3.21および3.17から3.20の最新patch versionsで一般提供されています。対象はstandaloneとhigh availability topologiesです。

Dedicated log diskは、/var/logへmountし、LVM volumeとしてconfiguredすることでroot diskからlog storageを分離する機能です。Release notesは、standaloneとhigh availability topologiesに適用され、cluster topologyには適用されないと説明しています。

適用条件

変更候補StandaloneHigh availabilityCluster
MySQL/repository data向けmultiple data disks対象対象対象外として扱う前にDocs再確認
Dedicated log disk対象対象対象外
Additional HA nodes対象外対象対象外
Custom firewall rules再適用対象対象対象

注意点

Storage構成変更は、GHES本体upgradeと同じmaintenanceに詰め込まないほうが安全です。容量、IO、backup、restore、snapshot、監視の設計が変わるため、ステージングでrestoreまで試してから本番計画に入れてください。

HA additional nodesは実測がある時に検討する

3.21では、high-availability datacenterにadditional nodesを追加し、CPU-intensive tasksをprimary data nodeからoffloadできる機能も説明されています。対象はhigh availability topologyで、standaloneやcluster topologyには適用されません。

評価基準

これは「入れれば速くなる」機能ではなく、CPU bottleneck、job scheduling、search/indexing、Actions、Git trafficなどの実測がある場合に検討するものです。導入判断には、既存monitoring、support bundle、staging検証、failover時の扱いを含めてください。

Custom firewall rulesの控えを残す

Release notesのKnown issuesでは、GHES upgrade中にcustom firewall rulesが削除されるとされています。該当環境では、現在のrules、適用スクリプト、owner、再適用タイミング、外部監視やbackup先の許可元を事前に保存してください。

確認項目

Post-upgradeで接続確認する相手は、開発者のGit/HTTPSだけではありません。Actions storage、Packages、external monitoring、identity provider、backup destination、webhook receiver、メール配送、proxyも含めて、疎通確認表を作る必要があります。

公開後の運用確認をアップグレード手順に入れる

VisualPost-upgrade validation board画面が戻った後に確認する領域を分け、次の変更へ進む前の完了条件を揃えます。
Jobs and migrations

background jobs、migrations、upgrade log、system logs、support bundleを確認します。

API

代表的な社内統合、GitHub Apps、外部SaaSで、API versionと認証方式の挙動を確認します。

Actions

runner更新、large workflow、pull_request_target、allowed actionsのpolicyを分けて確認します。

Monitoring

OpenTelemetry dashboard、alert rule、retention、外部監視への接続を確認します。

Security and notice

security configuration、alert担当者、ユーザー向け告知、管理者runbookを更新します。

ghe-migrationsとghe-check-background-upgrade-jobsで完了を確認するまで、次の大きな変更へ進まないほうが安全です。

GHESのfeature upgradeは、画面が戻った時点で終わりではありません。3.21ではAPI、Actions、OpenTelemetry、security configurationなど、アップグレード後に初めて違いが見える項目が多いため、post-upgrade validationを手順書に入れておくべきです。

Post-upgrade jobsとmigrationsを確認する

本番適用後は、background jobs、migrations、upgrade log、system logs、support bundle、monitor dashboardsを確認します。複数feature releaseを続ける予定がある場合でも、ghe-migrationsghe-check-background-upgrade-jobsで完了を確認するまで、次の大きな変更へ進まないほうが安全です。

検証は一つの巨大PRに詰め込まないでください。API、Actions、Monitoring、Security、Infra、User noticeを分けると、失敗時の原因を切り分けやすくなります。

確認項目

検証領域成功条件失敗時に見る場所
API主要統合が期待するstatusとschemaを返すAPI logs、integration logs、audit log
Actionsrunner 2.331.0で代表workflowが通るrunner log、workflow log、Actions storage
MonitoringOpenTelemetry dashboardとalertが動くOTel collector、Prometheus endpoint、Grafana
Securityalert assignmentやbypass reviewerが期待通りsecurity settings、audit log
Infrafirewall再適用後に外部連携が戻るsystem logs、network logs、proxy
User noticedowntime告知と解除が一致するannouncement banner、helpdesk tickets

ユーザー向け告知と管理者runbookを分ける

Release notesの全文を利用者へ流しても、ほとんどの人は何をすべきか分かりません。開発者向けには、Actions runnerやworkflow挙動、API version、Projects/Issues/PRの使い勝手変更を短く伝えます。セキュリティ担当には、Secret scanning、CodeQL、Dependabot、bypass、alert assignmentの変更を別紙にします。管理者runbookには、backup、snapshot、firewall、monitoring、post-upgrade jobsを残します。

実務への落とし込み

記事を読んだ後の実務としては、次の三つに分けると始めやすいはずです。

  1. 現在のGHES version、runner version、API統合、監視方式を台帳化する。
  2. ステージングで3.21 upgrade、runner 2.331.0、REST API 2026-03-10、OpenTelemetryを別々に確認する。
  3. 本番後にsecurity configurationをorganization単位で段階展開し、負荷とalert運用を見ながら広げる。

Microsoft/GitHubの公式発表や製品更新を継続的に追いたい場合は、記事末のニュースレター導線も利用できます。ここまでの確認事項を自社チェックリストに写すほうが先で、購買や投資判断を急ぐ記事ではありません。

次に読むなら

資料・確認ログ

Microsoft Watch Japanで公式発表、Docs、リリースノートをどう確認しているかを見る固定ページです。

参照した主な情報源

  • GitHub Changelog「GitHub Enterprise Server 3.21 is now generally available」

GitHub Enterprise Server 3.21 is now generally available

  • GitHub Docs「Enterprise Server 3.21 release notes」

https://docs.github.com/en/enterprise-server%403.21/admin/release-notes

  • GitHub Docs「GitHub Enterprise Server releases」

https://docs.github.com/en/enterprise-server%403.21/admin/all-releases

  • GitHub Docs「Upgrade requirements」

https://docs.github.com/en/enterprise-server%403.21/admin/upgrading-your-instance/preparing-to-upgrade/upgrade-requirements

  • GitHub Docs「Overview of the upgrade process」

https://docs.github.com/en/enterprise-server%403.21/admin/upgrading-your-instance/preparing-to-upgrade/overview-of-the-upgrade-process

  • GitHub Docs「OpenTelemetry metrics」

https://docs.github.com/en/enterprise-server%403.21/admin/monitoring-and-managing-your-instance/monitoring-your-instance/opentelemetry-metrics

  • GitHub Docs「Setting up external monitoring with OpenTelemetry」

https://docs.github.com/en/enterprise-server%403.21/admin/monitoring-and-managing-your-instance/monitoring-your-instance/opentelemetry-metrics/setting-up-external-monitoring-with-opentelemetry

  • GitHub actions/runner release v2.331.0

https://github.com/actions/runner/releases/tag/v2.331.0

更新履歴

  • 2026年6月15日JST: GitHub Changelog、GHES 3.21 release notes、upgrade docs、OpenTelemetry docs、actions/runner v2.331.0 release notesを確認し、初稿を作成しました。