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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
attakei
April 11, 2017
Technology
2.4k
2
Share
Ansibleで作る、AWSで「器の大きい」Omnibus-GitLab
HTMLスライドなので、どこかのタイミングでHTML版もちゃんと公開する予定です
- 5/14 整形して再アップロード
attakei
April 11, 2017
More Decks by attakei
See All by attakei
Sphinxを通して考える、「拡張」の仕方 / First approach for development sphinx extension
attakei
2
4.9k
PyPIデビュー手前の人のための地下活動手法 -PyPICloudを使ったプライベートレジストリの構築- / Using PyPICloud as private registry for pre-debut to PyPI
attakei
1
640
「〇〇のプラグインを作る」ことのすゝめ / Let's develop plugins
attakei
0
1.3k
プレゼン?それもSphinxで出来るよ -ドキュメントツールSphinxのちょっと変わった利用法- / You can presentation too by Sphinx!
attakei
1
1.5k
Cloud RunとFastAPIで、ChatBotをミニマムスタートしよう / Getting start ChatBot with FastAPI and Cloud RUN
attakei
0
3.2k
Web制作において、プレビューにあえてCloudRun(とFirebase)を使う / Using Cloud Run (and Firebase) as preview environment of HTML in web development
attakei
0
1.5k
Ansibleを通じて「べき等性」を 理解してみよう / Try understanding idempotency by Ansible
attakei
1
1.4k
素材の良さを活かしつつ、reST をReveal.jsに変換してみる話 / Converting pure reST to Revealjs
attakei
0
550
Eelで作ってみる WHOISアプリと スライド
attakei
0
1.1k
Other Decks in Technology
See All in Technology
データ基盤構築・運用の現場から 〜 Snowflake Intelligence 導入で変わった、データ活用の未来 〜
wonohe
0
180
TSKaigi 2026 - 10秒のビルドを1秒へ:tsdownが切り拓く2026年のTypeScriptライブラリ開発
teamlab
PRO
2
260
大規模環境でどのように監視を実現する?
yuobayashi
1
140
freee-mcpを Local→Remote で出してわかった MCP認可実装のリアル
terara
3
630
実践 TanStack Start ― 新規プロダクトを開発して確立した、サーバーとクライアント境界の設計パターン / Practical TanStack Start Server-Client Boundary Patterns
kaminashi
2
320
サプライチェーン攻撃への備えについて考えている #湘なんか
stefafafan
3
2.4k
コーディングエージェントはTypeScriptの 型エラーをどう自己修正しているのか
melonps
4
480
【禁断】Obsidianの第二の脳に「知の巨人」と呼ばれた師匠の脳をロードしてみた
nagatsu
0
6.5k
Claude Codeですべての日常業務を爆速化しよう!
minorun365
PRO
15
13k
EdgeプロファイルでAWSアカウントを安全に使い分ける
jhashimoto
0
100
『家族アルバム みてね』における インシデント対応との向き合い方 / Approach incident response in Family Album
kohbis
2
190
TSKaigi 2026 - Auth.jsからBetter Authへの 移行に見る「型とランタイム」の 設計思想の変化
teamlab
PRO
1
260
Featured
See All Featured
A better future with KSS
kneath
240
18k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
360
It's Worth the Effort
3n
188
29k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
280
Exploring anti-patterns in Rails
aemeredith
3
360
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.8k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
560
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
390
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
120
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
310
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やばい
ご清聴ありがとうございました