Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GitHub ActionsのGitHub-hosted Larger Runnersと他サービスと
Search
shonansurvivors
June 28, 2023
Technology
0
1k
GitHub ActionsのGitHub-hosted Larger Runnersと他サービスと
shonansurvivors
June 28, 2023
Tweet
Share
More Decks by shonansurvivors
See All by shonansurvivors
SREによる隣接領域への越境とその先の信頼性
shonansurvivors
2
700
スタートアップがAWSパートナーになって得られたこと
shonansurvivors
3
1k
AWSで構築するCDパイプラインとその改善
shonansurvivors
4
3.7k
Terraformでmoduleを使わずに複数環境を構築して感じた利点
shonansurvivors
3
3.4k
クロステナントアクセスを要件とするsmartroundのマルチテナントSaaSアーキテクチャ
shonansurvivors
0
450
CodeBuildで動かすecspresso
shonansurvivors
2
3.7k
EC2からのECS移行においてIaCとCDをどう変えたか
shonansurvivors
23
7.3k
S3とCloudWatch Logsの見直しから始めるコスト削減 / Cost saving S3 and CloudWatch Logs
shonansurvivors
3
2.9k
プロダクトと組織の成長を見据えたスマートラウンドの AWSマルチアカウント戦略/AWS Multi Account Strategy
shonansurvivors
5
4.8k
Other Decks in Technology
See All in Technology
ライフステージの変化を乗り越える 探索型のキャリア選択
tenshoku_draft
2
360
フォーイット_エンジニア向け会社紹介資料_Forit_Company_Profile.pdf
forit_tech
1
1.7k
Охота на косуль у древних
ashapiro
0
150
“常に進化する”開発現場へ! SHIFTが語るアジャイルQAの未来/20250306 Yuma Murase
shift_evolve
0
160
データモデルYANGの処理系を再発明した話
tjmtrhs
0
390
エンジニア主導の企画立案を可能にする組織とは?
recruitengineers
PRO
1
350
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
19k
AI-Driven-Development-20250310
yuhattor
3
310
アジリティを高めるテストマネジメント #QiitaQualityForward
makky_tyuyan
1
530
20250307_エンジニアじゃないけどAzureはじめてみた
ponponmikankan
2
270
User Story Mapping + Inclusive Team
kawaguti
PRO
3
600
【Forkwell】「正しく」失敗できるチームを作る──現場のリーダーのための恐怖と不安を乗り越える技術 - FL#83 / A team that can fail correctly by forkwell
i35_267
2
160
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
660
Writing Fast Ruby
sferik
628
61k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
115
51k
Facilitating Awesome Meetings
lara
53
6.3k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Automating Front-end Workflow
addyosmani
1369
200k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
4
390
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Embracing the Ebb and Flow
colly
84
4.6k
Transcript
GitHub dockyard(2023/8/5) GitHub Actionsの GitHub-hosted Larger Runnersと 他サービスと 株式会社スマートラウンド 山原
崇史(@shonansurvivors)
自己紹介 株式会社スマートラウンド SRE/コーポレートITチーム エンジニアリングマネージャー 山原 崇史 (やまはら たかし) 経歴等 ・SIer
→ 銀行 → Web系ベンチャー数社 → 現職 ・2023 Japan AWS Top Engineers(Software) ・AWS Startup Community Core Member 好きな技術領域 GitHub Actions / AWS / Terraform shonansurvivors
事業およびプロダクト紹介 ミッション スタートアップが可能性を最大限に発揮できる世界をつくる smartroundが実現する世界 統一化・標準化されたデータ管理によって、スタートアップと投資家双方の業務を効率化
本日のテーマ GitHub-hosted Larger Runnersと AWS CodeBuildやSelf-hostedとの比較の話
追加されたRunners 4-cores以上が選択可能に🎉 vCPUs(x86_64) Memory(RAM) Storage(SSD) OS 2 7GB 14GB Linux,
Windows 4 16GB 150GB Linux 8 32GB 300GB Linux, Windows 16 64GB 600GB Linux, Windows 32 128GB 1,200GB Linux, Windows 64 256GB 2,040GB Linux, Windows ※上記以外にmacOSあり
使い方 1. OraganizationのSettings > Actions > Runnersの設定画面でLarger Runnerを加える ◦ https://docs.github.com/en/actions/using-github-hosted-runners/managing-larger-runners#a
dding-a-larger-runner-to-an-organization 2. 追加したRunnerの名前をjobs.<job_id>.runs-on.labelsに記述する jobs: test: runs-on: labels: ubuntu-20.04-4-cores
処理時間 とあるJVM系言語でのCIの結果 (試行回数が各1回だけなのであくまで参考に ...) • 2-cores • 4-cores • 8-cores
4m 32s 5m 50s 12m 26s
気になる料金 • 2vCPUの料金の単純比例となる • Larger Runnersは無料枠の対象外なので注意 (例:Teamsの3,000分無料枠は消費されなかった ) スペック 1分あたりの料金
(Linux) 2vCPU / 7GB RAM $0.008 4vCPU / 16GB RAM $0.016 8vCPU / 32GB RAM $0.032 16vCPU / 64GB RAM $0.064 32vCPU / 128GB RAM $0.128 64vCPU / 256GB RAM $0.256
他のCIサービスとの比較 若干割高に見える? 🤔 スペック 1分あたりの料金 (Linux) 2vCPU / 7GB RAM
$0.008 4vCPU / 16GB RAM $0.016 8vCPU / 32GB RAM $0.032 16vCPU / 64GB RAM $0.064 32vCPU / 128GB RAM $0.128 64vCPU / 256GB RAM $0.256 GitHub Actions スペック 1分あたりの料金 (Linux) 2vCPU / 3GB RAM (general1.small) $0.005 4vCPU / 7GB RAM (general1.medium) $0.010 8vCPU / 15GB RAM (general1.large) $0.020 - - - - - - AWS CodeBuild(東京リージョン)
Self-hosted RunnersにAmazon EC2を使うとしたら Self-hosted Runnersの方が魅力的に見えてしまうが・・・ 🥺 スペック 60分あたりの料金 (Linux) 2vCPU
/ 7GB RAM $0.480 4vCPU / 16GB RAM $0.960 8vCPU / 32GB RAM $1.920 16vCPU / 64GB RAM $3.840 32vCPU / 128GB RAM $7.680 64vCPU / 256GB RAM $15.360 GitHub Actions スペック 60分あたりの料金 2vCPU / 8GB RAM (m5.large) $0.096 4vCPU / 16GB RAM (m5.xlarge) $0.192 8vCPU / 32GB RAM (m5.2xlarge) $0.384 16vCPU / 64GB RAM (m5.4xlarge) $0.768 32vCPU / 128GB RAM (m5.8xlarge) $1.536 64vCPU / 256GB RAM (m5.16xlarge) $3.072 Amazon EC2のm5ファミリー(東京リージョン)
一概に優劣は付けられない AWS CodeBuild • 類似サービスではあるが、そもそも 仕様や使い勝手に大きく違いがある • 実際に処理が開始されるまでの 待ち時間にムラがあり、そこに多くかかることがある (以下は一例)
処 理 の 流 れ 環境が起動するまでの時間 コードをGitHubから ダウンロードする時間
一概に優劣は付けられない Self-hosted Runners • 一定の初期構築工数 はかかる ◦ 専用のTerraform module(https://github.com/philips-labs/terraform-aws-github-runner )
などを利用することで構築を楽にすることは可能 • ジョブ開始までの待ち時間が長く感じて 実用を見送った経験あり ◦ ちなみに登壇者の所属組織のエンジニア数は 10名ほど(2023年8月現在) ◦ より大きな規模の開発組織で、時間あたりのジョブ起動回数も多く、 Runnerをいくつか常時起動してプールして利用する場合は 待ち時間は問題にならないのかも (Self-hostedを運用している人、ぜひ教えて下さい! )
まとめ Github-hosted Larger Runners • すぐに手軽にGitHub Actionsのジョブを高速化できる • Self-hosted Runnersを運用するほどではない
小規模組織には特におすすめ できるのではないか • AWS CodeBuildを選択するかは組織の事情に合わせて (できるだけAWSに寄せたいなど)
ご清聴ありがとうございました! Startup comes first! Join our team! jobs.smartround.com