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
AWS 環境で GitLab Self-managed を試してみた/aws-gitlab-s...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
emi
November 07, 2025
Technology
0
800
AWS 環境で GitLab Self-managed を試してみた/aws-gitlab-self-managed
JAWS-UG 茨城 #9 1周年だよ!水戸に集合だぁ!
https://jawsug-ibaraki.connpass.com/event/370298/
emi
November 07, 2025
Tweet
Share
More Decks by emi
See All by emi
Database イノベーショントークを振り返る/reinvent-2025-database-innovation-talk-recap
emiki
0
330
実体験:エンジニアの妊娠・出産と仕事/real-life-experience-pregnancy-childbirth-and-work-for-engineers
emiki
9
2k
今から間に合う re:Invent 準備グッズと現地の地図、その他ラスベガスを周る際の Tips/reinvent-preparation-guide
emiki
2
1.3k
AWS DMS で SQL Server を移行してみた/aws-dms-sql-server-migration
emiki
0
450
RDS の負荷が高い場合に AWS で取りうる具体策 N 連発/a-series-of-specific-countermeasures-available-on-aws-when-rds-is-under-high-load
emiki
8
5.1k
Performance Insights 廃止から Database Insights 利用へ/transition-from-performance-insights-to-database-insights
emiki
0
1.5k
S3 Glacier のデータを Athena からクエリしようとしたらどうなるのか/try-to-query-s3-glacier-from-athena
emiki
0
470
robocopy の怖い話/scary-story-about-robocopy
emiki
0
630
QuickSight SPICE の効果的な運用戦略~S3 + Athena 構成での実践ノウハウ~/quicksight-spice-s3-athena-best-practices
emiki
1
900
Other Decks in Technology
See All in Technology
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
160
Deno・Bunの標準機能やElysiaJSを使ったWebSocketサーバー実装 / ラーメン屋を貸し切ってLT会! IoTLT 2026新年会
you
PRO
0
290
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
67k
Agile Leadership Summit Keynote 2026
m_seki
1
430
GSIが複数キー対応したことで、俺達はいったい何が嬉しいのか?
smt7174
3
140
usermode linux without MMU - fosdem2026 kernel devroom
thehajime
0
210
プロポーザルに込める段取り八分
shoheimitani
1
170
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
42k
IaaS/SaaS管理における SREの実践 - SRE Kaigi 2026
bbqallstars
4
1.7k
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.3k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
AzureでのIaC - Bicep? Terraform? それ早く言ってよ会議
torumakabe
1
350
Featured
See All Featured
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
430
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Code Reviewing Like a Champion
maltzj
527
40k
Visualization
eitanlees
150
17k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
52k
Accessibility Awareness
sabderemane
0
49
The Curse of the Amulet
leimatthew05
1
8.2k
Documentation Writing (for coders)
carmenintech
77
5.2k
We Are The Robots
honzajavorek
0
160
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.9k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
62
Transcript
2025/11/8(水) JAWS-UG 茨城 #9 1周年だよ!水戸に集合だぁ! AWS 環境で GitLab Self-managed を
試してみた
自己紹介 2 • 最近やっていた・いること ◦ Terraform を用いた AWS リソース構築支援 ◦
AWS Control Tower を用いたマルチアカウント環境での AWS Security Hub、Amazon GuardDuty 展開 ◦ AWS リソース負荷軽減、構成検討 ◦ コスト最適化アセスメント ◦ Amazon QuickSight や Amazon Athena を利用した データ分析・可視化 • 名前(ニックネーム) ◦ 木谷 映見(emi) • 部署 ◦ クラスメソッド株式会社 ◦ クラウド事業本部コンサルティング部 • 趣味 ◦ コーヒー、ドーナツ、サウナ、 ホットヨガ、漫画、音楽など AWS Certified Cloud Practitioner バ ッ ジ AWS Certified AI Practitioner バ ッ ジ AWS Certified Solutions Architect - Professional バ ッ ジ AWS Certified DevOps Engineer - Professional バ ッ ジ AWS Certified Advanced Networking - Specialty バ ッ ジ AWS Certified Machine Learning - Specialty AWS Certified Security - Specialty バ ッ ジ AWS Certified SysOps Administrator - Associate バ ッ ジ AWS Certified Developer - Associate バ ッ ジ AWS Certified Solutions Architect - Associate バ ッ ジ AWS Certified Data Engineer - Associate バ ッ ジ AWS Certified Machine Learning Engineer - Associate バ ッ ジ AWS Certified Cloud Practitioner バ ッ ジ AWS Certified AI Practitioner バ ッ ジ AWS Certified Solutions Architect - Professional バ ッ ジ AWS Certified DevOps Engineer - Professional バ ッ ジ AWS Certified Advanced Networking - Specialty バ ッ ジ AWS Certified Machine Learning - Specialty AWS Certified Security - Specialty バ ッ ジ AWS Certified SysOps Administrator - Associate バ ッ ジ AWS Certified Developer - Associate バ ッ ジ AWS Certified Solutions Architect - Associate バ ッ ジ AWS Certified Data Engineer - Associate バ ッ ジ AWS Certified Machine Learning Engineer - Associate バ ッ ジ 最近はカフェインを控えています
目次 3 ⚫ 背景 ⚫ 構築したもの ⚫ GitLab パーソナルアクセストークン取得 ⚫
AWS CodeConnections 連携 ⚫ 接続できたりできなかったり問題 ⚫ おわりに
背景 4 ⚫ 背景 ⚫ 構築したもの ⚫ GitLab パーソナルアクセストークン取得 ⚫
AWS CodeConnections 連携 ⚫ 接続できたりできなかったり問題 ⚫ おわりに
背景
6 ⚫ GitLab ⚫ ソースコード管理(Git)を中心としたソフトウェア開発を一元管理できるプラットフォーム ⚫ Issue 管理・Merge Request(レビュー)・CI/CD・Container Registry
など、開発に必要な 機能を統合提供 ⚫ クラウド/SaaS 版と、自前環境に構築できる Self-Managed 版がある 背景
7 ⚫ Self-Managed GitLab が選ばれるケース ⚫ セキュリティ & コンプライアンス ⚫
クラウド型 GitLab.com や GitHub.com が使えない ⚫ コードや成果物を SaaS(クラウド)に持ち出せない、オンプレや閉域網での運用が必須 ⚫ カスタマイズ性 ⚫ 外部認証方式・CI/CD 設計を独自にカスタムしたい ⚫ プラグイン / 独自インテグレーションを組み込みたい ⚫ コスト管理 ⚫ SaaS のユーザー課金より自前で構築した方がコストを抑えられる場合がある ⚫ Self-Managed で構築した GitLab が CodeConnections でうまくいかない ケースがあり、調査のために自分でも構築を試してみた 背景
構築したもの 8 ⚫ 背景 ⚫ 構築したもの ⚫ GitLab パーソナルアクセストークン取得 ⚫
AWS CodeConnections 連携 ⚫ 接続できたりできなかったり問題 ⚫ おわりに
構築したもの
10 構築したもの
11 構築したもの 色々あって NLB にしたのですが接続 でうまくいかないことが多発
12 ⚫ NLB のターゲットグループ 構築したもの
13 ⚫ NLB のターゲットグループ 構築したもの
14 ⚫ NLB 構築したもの
15 ⚫ NLB リスナー(ACM 証明書を設定) 構築したもの
16 ⚫ セキュリティグループ 構築したもの
17 ⚫ Route 53 構築したもの NLB に対するエイリアスレコード
18 ⚫ EC2 へ GitLab Community Edition(CE)をインストール ⚫ Amazon Linux
2023 に GitLab Community Edition をインストールする | DevelopersIO https://dev.classmethod.jp/articles/amazon-linux-2023-gitlab-ce/ ⚫ sudo dnf install -y policycoreutils-python-utils openssh-server openssh-clients perl ⚫ GitLab を動かすために必要な基本パッケージ(SSH/Perl 等)を先にインストール ⚫ curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash ⚫ GitLab CE 用のリポジトリを追加するスクリプトを取得&実行。この後に dnf install gitlab-ce が可能になる ⚫ sudo EXTERNAL_URL=“https://<設定するドメイン名>" dnf install -y gitlab-ce ⚫ GitLab CE 本体インストール。環境変数 EXTERNAL_URL で公開 URL を指定しておくとセットアップ時にその URL を使うよう構成される ⚫ sudo cat /etc/gitlab/initial_root_password ⚫ 初回ログイン用の管理者(root)パスワードを確認するコマンド。インストール直後のみ有効なファイル 構築したもの
19 構築したもの
20 構築したもの 繋がったりつながらなかったり
GitLab パーソナルアクセストークン取得 21 ⚫ 背景 ⚫ 構築したもの ⚫ GitLab パーソナルアクセストークン取得
⚫ AWS CodeConnections 連携 ⚫ 接続できたりできなかったり問題 ⚫ おわりに
GitLab パーソナルアクセストークン取得
23 GitLab パーソナルアクセストークン取得
24 GitLab パーソナルアクセストークン取得
25 GitLab パーソナルアクセストークン取得
26 GitLab パーソナルアクセストークン取得
27 GitLab パーソナルアクセストークン取得
28 GitLab パーソナルアクセストークン取得
AWS CodeConnections 連携 29 ⚫ 背景 ⚫ 構築したもの ⚫ GitLab
パーソナルアクセストークン取得 ⚫ AWS CodeConnections 連携 ⚫ 接続できたりできなかったり問題 ⚫ おわりに
AWS CodeConnections 連携
31 ⚫ Code シリーズのどれかを開き「接続」を作成 AWS CodeConnections 連携
32 AWS CodeConnections 連携
33 AWS CodeConnections 連携 保留中の接続を更新
34 AWS CodeConnections 連携 GitLab の パーソナルアクセストークン を入力
35 AWS CodeConnections 連携
36 AWS CodeConnections 連携
37 ⚫ あとはパイプラインを組んでいただく AWS CodeConnections 連携
接続できたりできなかったり問題 38 ⚫ 背景 ⚫ 構築したもの ⚫ GitLab パーソナルアクセストークン取得 ⚫
AWS CodeConnections 連携 ⚫ 接続できたりできなかったり問題 ⚫ おわりに
接続できたりできなかったり問題
40 ⚫ タイミングによって繋がったりつながらなかったり 接続できたりできなかったり問題
41 ⚫ NLB のターゲットグループで Unhealthy だったり Healthy だったり ⚫ Healthy
のタイミングで /users/sign_in にアクセスすると一時的には正常表示 ⚫ Unhealthy になるタイミングもあり、接続不良が発生 ⚫ nginx の LISTEN を確認 ⚫ ss –lntp ⚫ ネットワーク接続の状態を確認するコマンド ⚫ 0.0.0.0:80 を nginx が LISTEN → OK 接続できたりできなかったり問題
42 ⚫ gitlab.rb の編集 ⚫ gitlab.rb とは? ⚫ 場所: /etc/gitlab/gitlab.rb
⚫ GitLab の設定を一元管理しているファイル。gitlab.rb に書いた内容が nginx、redis、 postgresql… など GitLab を構成する全部のサービスへ自動反映される ⚫ sudo gitlab-ctl reconfigure コマンドでこのファイルを読み、各種サービスの 実設定ファイルが生成され再起動し設定が反映される ⚫ NLB で TLS 終端し、GitLab 本体(同梱 nginx)は HTTP(80) で待ち受ける構成にするため 設定を編集 接続できたりできなかったり問題
などなど試しましたが、 結局作業中に接続不良を起こすのは変わらず… 43 接続できたりできなかったり問題
44 接続できたりできなかったり問題 色々あって NLB にしたのですが接続 でうまくいかないことが多発 → ALB の方が良かった
45 ⚫ ALB なら ⚫ L7 (HTTP) を理解し、アプリ状態に応じた制御ができる ⚫ HTTP
レベルの情報(パス / ステータスコード / ヘッダー)を利用したヘルスチェック/コネクション制御 が可能。設定次第で、一時的な遅延や重い処理を Unhealthy と誤判定するリスクを軽減できる ⚫ NLB は L4 のため、バックエンドが遅延すると Health Check Timeout → Connection Close → nginx 499 と記録されやすい ⚫ スティッキーセッション対応 ⚫ アイドルタイムアウトを 1~4000 秒の範囲で調整できる ⚫ NLB は 120 秒まで ⚫ Apache や nginx のタイムアウトと合わせることに注意 ⚫ ELBアイドルタイムアウトを伸ばす場合に注意した事 #AWS - Qiita https://qiita.com/Taishikun0721/items/48711323d5cda6ae8dc7 ⚫ ELB のバックエンドサーバーとして Apache または NGINX を使用する | AWS re:Post https://repost.aws/ja/knowledge-center/apache- backend-elb ⚫ L7 ヘルスチェックが豊富 ⚫ パス、成功コードマッチャ、閾値など細かく調整でき、誤検知で Unhealthy になりにくい 接続できたりできなかったり問題
接続できたりできなかったり問題 46 ⚫ 背景 ⚫ 構築したもの ⚫ GitLab パーソナルアクセストークン取得 ⚫
AWS CodeConnections 連携 ⚫ 接続できたりできなかったり問題 ⚫ おわりに
おわりに
48 ⚫ GitLab についてちょっとだけ勉強できた ⚫ 馴染みのなかった Code シリーズに少し触れられた ⚫ 接続不調のトラブルシューティングで学びがあった
おわりに
None