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
Ansibleで作る、AWSで「器の大きい」Omnibus-GitLab
Search
attakei
April 11, 2017
Technology
2
2.3k
Ansibleで作る、AWSで「器の大きい」Omnibus-GitLab
HTMLスライドなので、どこかのタイミングでHTML版もちゃんと公開する予定です
- 5/14 整形して再アップロード
attakei
April 11, 2017
Tweet
Share
More Decks by attakei
See All by attakei
Sphinxを通して考える、「拡張」の仕方 / First approach for development sphinx extension
attakei
2
4.3k
PyPIデビュー手前の人のための地下活動手法 -PyPICloudを使ったプライベートレジストリの構築- / Using PyPICloud as private registry for pre-debut to PyPI
attakei
1
510
「〇〇のプラグインを作る」ことのすゝめ / Let's develop plugins
attakei
0
1.1k
プレゼン?それもSphinxで出来るよ -ドキュメントツールSphinxのちょっと変わった利用法- / You can presentation too by Sphinx!
attakei
1
1.3k
Cloud RunとFastAPIで、ChatBotをミニマムスタートしよう / Getting start ChatBot with FastAPI and Cloud RUN
attakei
0
3k
Web制作において、プレビューにあえてCloudRun(とFirebase)を使う / Using Cloud Run (and Firebase) as preview environment of HTML in web development
attakei
0
1.3k
Ansibleを通じて「べき等性」を 理解してみよう / Try understanding idempotency by Ansible
attakei
1
1.3k
素材の良さを活かしつつ、reST をReveal.jsに変換してみる話 / Converting pure reST to Revealjs
attakei
0
430
Eelで作ってみる WHOISアプリと スライド
attakei
0
1k
Other Decks in Technology
See All in Technology
開発生産性を組織全体の「生産性」へ! 部門間連携の壁を越える実践的ステップ
sudo5in5k
0
340
asken AI勉強会(Android)
tadashi_sato
0
140
5min GuardDuty Extended Threat Detection EKS
takakuni
0
180
生成AI時代 文字コードを学ぶ意義を見出せるか?
hrsued
1
730
2025-06-26_Lightning_Talk_for_Lightning_Talks
_hashimo2
2
110
生成AIで小説を書くためにプロンプトの制約や原則について学ぶ / prompt-engineering-for-ai-fiction
nwiizo
4
3.4k
KubeCon + CloudNativeCon Japan 2025 Recap
ren510dev
1
300
なぜ私はいま、ここにいるのか? #もがく中堅デザイナー #プロダクトデザイナー
bengo4com
0
1.3k
ドメイン特化なCLIPモデルとデータセットの紹介
tattaka
1
450
KubeCon + CloudNativeCon Japan 2025 Recap Opening & Choose Your Own Adventureシリーズまとめ
mmmatsuda
0
230
Witchcraft for Memory
pocke
1
660
論文紹介:LLMDet (CVPR2025 Highlight)
tattaka
0
240
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.8k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
GitHub's CSS Performance
jonrohan
1031
460k
Thoughts on Productivity
jonyablonski
69
4.7k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
What's in a price? How to price your products and services
michaelherold
246
12k
GraphQLとの向き合い方2022年版
quramy
49
14k
Six Lessons from altMBA
skipperchong
28
3.9k
Building an army of robots
kneath
306
45k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
The Straight Up "How To Draw Better" Workshop
denniskardys
234
140k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Transcript
Ansibleで作る、AWSで「器の⼤き い」Omnibus-GitLab Kazuya Takei 2017/04/11 LT in GitLab Meetup Tokyo
#2
⾃⼰紹介 武居和也(タケイ カズヤ) サーバサイド主軸のエンジニア Company: 株式会社ニジボックス 開発室 アーキテクト 主に事業以外の領域を⾒ています Social:
@attakei Python系のコード書いていることが多いです
ニジボックスのGitLab 主に⾮業務領域や検証⽤コードの置き場として社内にひっそり提供 ◦◦勉強会 社内開発合宿 部活動 少し前はソースをCloneしてました インフラ移管のついでに、Omnibus-GitLab形式に移⾏ ※以降は、この環境構築時の知⾒をもとに、 ほぼ個⼈時間を使ってリファクタリングしてみたあとの話です。
今回話すこと 1. AWS上に 2. CloudFormationを使って 3. 「器の⼤きい」Omnibus-GitLabを構築する 4. Ansible の
playbookを作りました。
DEMO(途中経過)
Omnibus-GitLabって? いわゆる、 All in one GitLab です。 GitLab(⼀式) PostgreSQL Redis
nginx Mattermost をまとめてインストールしてくれます。
Ansibleって? Python製の構成管理ツールです。 - hosts: db roles: - postgres - hosts:
web roles: - nginx (主役の⼀⼈だけど、今回は割愛)
「器が⼤きい」とは Omnibus-GitLabのファイルを置く領域に、Elastic File System(EFS)を使います。 https://aws.amazon.com/jp/efs/ AWSが提供するスケーラブルなファイルストレージ 容量をオンデマンドで使えるNFS的なもの 要するに リポジトリの利⽤枠が(実質)制限なしになります 今回は、この⼀点だけでEFSを選択しました
作ってみた構造
中⾝ https://gitlab.com/attakei/ansible-omnibus-gitlab-playbook ここに置いてます。(少し前に、publicにしました) 必要なもの AnsibleがインストールされているPC botoも必要 EFSを使えるAWSアカウント(IAMユーザ)
Ansibleでやっていること(1) CloudFormation経由でAWSのリソースをまとめて作成
Ansibleでやっていること(2) 作成されたEC2インスタンスに、EFSをマウントさせてGitLabをインストール
(そろそろ完了した?)
EFSによって得られる恩恵 1. GitLabアクセスする 2. rootパスワードを変更する 3. ログインする 4. Admin Area⾏く
5. Monitoring ⾒る 6. →→ こうなる →→
EFSによって得られる恩恵
8390000TB!? 8390 PB 8.4 EB ぐぐってみたら Androidのリポジトリをクローンすると40GB弱あるらしいです。 フルに使うと、$3,000,0000,000 = 330,0億/⽉?
8390000TB!?
運⽤上の話 サーバ監視する際に、ディスク使⽤量を気にする必要性はなくなりました ただし、EBSのボリューム拡⼤がもうアタッチしたままできます
FAQ的な CloudFormationで全部やらないの? Ansibleが好きなんです GitLab Pagesは? ELBを導⼊していないので、⾮対応です タイミング的に最初の構築時にはGitLab-CEにPagesがまだなかった
まとめ Omnibus-GitLabすごい Ansible楽ちん EFSやばい
ご清聴ありがとうございました