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.2k
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
4k
PyPIデビュー手前の人のための地下活動手法 -PyPICloudを使ったプライベートレジストリの構築- / Using PyPICloud as private registry for pre-debut to PyPI
attakei
1
440
「〇〇のプラグインを作る」ことのすゝめ / Let's develop plugins
attakei
0
1k
プレゼン?それもSphinxで出来るよ -ドキュメントツールSphinxのちょっと変わった利用法- / You can presentation too by Sphinx!
attakei
0
1k
Cloud RunとFastAPIで、ChatBotをミニマムスタートしよう / Getting start ChatBot with FastAPI and Cloud RUN
attakei
0
2.8k
Web制作において、プレビューにあえてCloudRun(とFirebase)を使う / Using Cloud Run (and Firebase) as preview environment of HTML in web development
attakei
0
1.1k
Ansibleを通じて「べき等性」を 理解してみよう / Try understanding idempotency by Ansible
attakei
1
1.1k
素材の良さを活かしつつ、reST をReveal.jsに変換してみる話 / Converting pure reST to Revealjs
attakei
0
340
Eelで作ってみる WHOISアプリと スライド
attakei
0
940
Other Decks in Technology
See All in Technology
AWS Lambdaと歩んだ“サーバーレス”と今後 #lambda_10years
yoshidashingo
1
170
RubyのWebアプリケーションを50倍速くする方法 / How to Make a Ruby Web Application 50 Times Faster
hogelog
3
940
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
290
Taming you application's environments
salaboy
0
180
Platform Engineering for Software Developers and Architects
syntasso
1
510
複雑なState管理からの脱却
sansantech
PRO
1
140
OCI 運用監視サービス 概要
oracle4engineer
PRO
0
4.8k
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
470
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
280
ドメイン名の終活について - JPAAWG 7th -
mikit
33
20k
Why App Signing Matters for Your Android Apps - Android Bangkok Conference 2024
akexorcist
0
120
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.3k
Featured
See All Featured
Building Adaptive Systems
keathley
38
2.3k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
860
Thoughts on Productivity
jonyablonski
67
4.3k
Side Projects
sachag
452
42k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Unsuck your backbone
ammeep
668
57k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Code Review Best Practice
trishagee
64
17k
Building an army of robots
kneath
302
43k
The Language of Interfaces
destraynor
154
24k
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やばい
ご清聴ありがとうございました