生成AIを用いた開発者向けの検索エンジン「Phind」が2025年2月にアップデートを実施し、画像や図などの視覚的な回答機能やマルチステップでの推論機能が追加されました。開発元はこれを「Phind 2」と呼んでいます。
⇧ ネットワーク構成図やシステム関連概要図などのアーキテクチャ図とかシーケンス図とか絵にしてくれるのは、全体を把握し易くなるのでありがたい。
GitHub Actionsを業務で利用する場合はコストを意識する必要がありそう
個人で利用してる範囲だと、余程のヘビーユーザーでもない限りは、「GitHub Actions」の課金を気にすることは無いと思われますが、業務で利用するような場合は意識しておいた方が良さそうと思ったので、備忘録として。
「GitHub Actions」の公式のドキュメントによりますと、
GitHub Actions の課金について
GitHub Actions の使用は、パブリック リポジトリの標準の GitHub ホステッド ランナーとセルフホステッド ランナーの場合は無料です。 プライベート リポジトリの場合、アカウントのプランに応じて、GitHub ホステッド ランナーでの使用を対象として、一定量の無料の使用時間 (分) とストレージが各 GitHub アカウントに付与されます。 含まれる量を超える使用は、使用制限によって制御されます。
■標準ランナー
■x64 搭載 より大きなランナー
■ARM64 搭載 より大きなランナー
■GPU 搭載 より大きなランナー
⇧ とあり、業務で「GitHub Actions」を多用しているようなケースでは、意外と割高になってしまうのではないかという気がしてきた。
ちなみに、
⇧「GitHub Actions」で「runner」には、大きく分けて、
- GitHub-hosted runners
- Self-hosted runners
の2種類があるらしく、課金対象は「1. GitHub-hosted runners」の方になりますと。
つまり、「GitHub」側が用意している「runner」を利用するのが、「1. GitHub-hosted runners」で、一方、「オンプレミス環境」や「クラウドサービス」などで「GitHub」環境以外に「GitHub Actions」の「ワークフロー」を実行できる環境として「runner」を用意するのが、「2. Self-hosted runners」ですと。
「1. GitHub-hosted runners」の場合は、
⇧「GitHub」側で「runner」として、
などが起ち上がって、「GitHub Actions」の「ワークフロー」が実行される感じっぽい。
「2. Self-hosted runners」の場合は、
⇧「GitHub」以外の環境に用意したリソースで「runner」が起ち上がって「GitHub Actions」の「ワークフロー」が実行される感じっぽい。
「2. Self-hosted runners」を利用する場合は、事前に「GitHub」側で「runner」を登録しておく必要があると思われますと。
「Phind」に質問してみたところ、
■GitHub Actionsのワークフローの実行に関連するザックリした登場人物
■GitHub Actionsのワークフローの実行のザックリしたシーケンス図
⇧ というような回答が返ってきた。
ちなみに、他の「Gitホスティングサービス」との違いを聞いてみたところ、
■ザックリした登場人物(他のGitホスティングサービスとの違い)
■対応表(他のGitホスティングサービスとの違い)
機能 | GitHub Actions | GitLab CI/CD | GitBucket CI |
---|---|---|---|
ホスティングサービス | GitHub専用 | GitLab専用 | GitBucket専用 |
設定ファイル | .github/workflows/*.yml |
.gitlab-ci.yml |
gitbucket-ci.yml |
実行環境 | Linux、Windows、macOS | Linux(主要)、macOS、Windows(ベータ) | Linux |
コード再利用 | Actions、Reusable Workflows | Hidden Jobs、YAML Anchors、Includes | 基本的なYAML構文 |
デバッグ機能 | 基本的なログ表示 | Pipeline Editor、Validation | 基本的なログ表示 |
デプロイメント | マニュアル設定が必要 | カナリア、ブルーグリーン等をサポート | 基本的なデプロイ |
コスト | 実行時間ベース | ユーザー数ベース | 基本無料 |
⇧ 上記のような回答が返ってきた。
参考にした情報のURLも連携してくれる模様。ただし、一次情報ではない情報がほとんどなので、情報の精度は未知数。(それだけ、一次情報に情報が無いということの裏返しなのかもしれないが...)
話が脱線しましたが、「GitHub Actions」の課金の話に戻ると、とは言え、「Self-hosted runners」を利用するとしても、「オンプレミス環境」で自前のサーバーを持っているようなケースを除き、「クラウド」のサービスを利用する形になってしまうと思われるので、従量課金によるコストは避けられませんと。
とりあえず、「GitHub Actions」のドキュメントの課金体系の内容をLinuxに絞って、マトリックス表にまとめてみた。
■Linux(1分毎の課金額)
No | runner | コスト(コア) | ||||||
---|---|---|---|---|---|---|---|---|
2 | Advanced 2-core | 4 | 8 | 16 | 32 | 64 | ||
1 | 標準ランナー | $0.008 | - | - | - | - | - | - |
2 | x64 搭載 より大きなランナー | - | $0.008 | $0.016 | $0.032 | $0.064 | $0.128 | $0.256 |
3 | ARM64 搭載 より大きなランナー | $0.005 | - | $0.01 | $0.02 | $0.04 | $0.08 | $0.16 |
4 | GPU 搭載 より大きなランナー | - | - | $0.04 | - | - | - | - |
仮に、プランが「組織の GitHub Free」だった場合、「2000(分/月)」を超えると1分毎に課金されるっぽいので、「GitHub Actions」の「ワークフロー」を実装・検証する作業を10人ほどで行っていて、1か月の稼働を20日とした場合、
1日10分までの利用であれば、課金の心配は無いのだけど、普通に考えて、10分で収まるとは思えないのだが、仮に、「標準ランナー」の「Linux 2コア」で毎日120分(2時間)利用したとすると、
となり、2025年2月14日(金)時点では、1ドルが、152.54円らしいので、
1か月で約27000円のコストがかかりますと...
ちなみに、無料分の金額は、
となり、日本円に換算すると、
1か月で約2500円分になりますと。
今時、1コイン(500円)ランチを提供してるお店は無いとは思いますが、毎月5回分と考えると太っ腹な気もしますが。
長時間、または、高頻度で実行するようなタスクを「GitHub Actions」の「ワークフロー」で実現しようとするとコスト面の懸念はありますと。
大規模プロジェクトにおける、実行が高頻度、且つ、時間がかかるフロントエンド系のビルドのようなタスクを「GitHub Actions」の「ワークフロー」で実現しようとすると多分、確実に課金額がとんでもないことになりそうではある...
まぁ、最近はビルドツールも改善されているっぽいので、ネットの情報を漁っていても、ビルド時間は短縮されているような情報が多いので、昔ほど気にならなくなっている感じなのかな?
ただ、「GitHub Actions」の「ワークフロー」を多数、且つ、高頻度で活用しているような場合は、コストには要注意ということですかね?
とは言え、選択肢はあって無いような気もしますが...
とりあえず、時間のかかりそうな処理については、気軽にトライアンドエラーで「GitHub Actions」の「ワークフロー」を実行するのは控えよう...
毎度モヤモヤ感が半端ない…
今回はこのへんで。