Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
MeetUp-202008-Infra.pdf
Search
Kashi-Tatsu
August 25, 2020
2.2k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
MeetUp-202008-Infra.pdf
Kashi-Tatsu
August 25, 2020
More Decks by Kashi-Tatsu
See All by Kashi-Tatsu
MeetUp-メール配信サービス「blastmail」のM&A後の軌跡 ~初めのシステムに向き合う~.pdf
kashitatsu
0
1.5k
MeetUp-202105-Infra.pdf
kashitatsu
0
1.8k
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
The untapped power of vector embeddings
frankvandijk
2
1.9k
Raft: Consensus for Rubyists
vanstee
142
7.7k
Building Adaptive Systems
keathley
44
3.2k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.9k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
4 Signs Your Business is Dying
shpigford
187
23k
Agile that works and the tools we love
rasmusluckow
331
22k
Prompt Engineering for Job Search
mfonobong
0
450
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Transcript
©2020 RAKUS Co., Ltd. 積極的にAWSサービスと自動化を使って to BのSaaSをローンチしたその後 株式会社ラクス インフラ開発部 柏木
達仁
柏木 達仁(かしわぎ たつひと) エンジニア的な自己紹介 2010年にto Bシステムインテグレーション会社へ入社し、パッケージシステムや SaaSに関わる。 2017年にラクスへ入社し、インフラ開発部に所属。 主に、blastmail、楽楽労務などのAWS関連商材を担当。 ▪スキ
楽なこと、考えて実践すること ▪キライ 繰り返し、伝言ゲーム
アジェンダ 1. SaaSにおける「運用」とは 2. なぜAWSサービスを多用するのか? 3. AWSサービスの選定ポイント 4. なぜ自動化するのか? 5.
バージョンアップにおける自動化
1. SaaSにおける「運用」とは 特徴 • サービスを提供し続けるための業務 • ローンチがスタートライン。そこからがサービスとしての勝負。 そして... 絶対にある運用業務 =
バージョンアップ!!
2. なぜAWSサービスを多用するのか? • オンプレミスよりもイニシャルコスト(=初期コスト)が安い。 ◦ 売れるか?利益が出るか?の中で考えることを減らせられる。 • 特に初期段階は、素早く提供し、顧客の反応を確かめていきたい。 • リソースを(ある程度)お金ですぐに買える。
• 基盤の信頼性。
3. AWSサービスの選定ポイント • 使うAWSサービスは「やたら」と増やさない。 ◦ 自分たちにすでにノウハウがあるモノの代替 を使おう! ◦ シンプルイズベスト= 「構成図」をかけるレベル
におさめる。 • サービスごとに「何」に対する従量課金か?を気にする。 ◦ 時間?データ処理量? • インフラコード化、自動化することも考えて選ぶ。
3. AWSサービスの選定ポイント 間違った選定や使い方をすると ... • 「ALB - ECS(fargate) - RDS」でいいものをAPI
GatewayやLambdaを組み合わせる。 学習コストが高くなりがち、トラブルシュートに時間。 • S3:ストレージ容量+通信量の従量課金だと思ったら、クエリでも課金。 アプリから無駄なアクセスすると、とんでもない料金に。
3. AWSサービスの選定ポイント • ALB • ECS(fargate) • RDS(Aurora) が主軸。 部分的、補助的に、以下も利用。
• S3 • KMS • CloudWatch • WAF
4. なぜ自動化するのか? • SaaSでは絶対にバージョンアップが発生するため。 • 安定して「継続」させるためには、属人化の排除が必要。 • 人間の品質にはブレがあるが、コード化すればブレは(ほぼ)消える。 ◦ 向上させていくのみ...。
5. バージョンアップにおける自動化 × ×
5. バージョンアップにおける自動化 • Java製。WebUIから、スクリプトを定義・実行できるツール。 • スクリプト(bash/python/php/etc…)をスケジュール、ボタンで実行 • 実行履歴が残る、ユーザーへの権限制限があるため、監査にも強い。 • おすすめ動画:https://www.youtube.com/watch?v=QSY_qw9Buic
5. バージョンアップにおける自動化
5. バージョンアップにおける自動化 • Golang製。クラウドの構成を管理できるInfrastructure as Code(IaC)。 • HashiCorp社 … Terraform、Vault、Vagrant、Consul、Packer、Nomadなどを開発。
• すでに存在しているリソースをコードにしてくれる補助 OSSもある。 • Ansible(=OS以上のレイヤーに強い)より、OSより下のレイヤーを扱いやすい。 • おすすめ動画:https://www.youtube.com/watch?v=UleogrJkZn0
5. バージョンアップにおける自動化 resource "aws_instance" "sample_ec2" { ami = "ami-xxxx" availability_zone
= "ap-northeast-1a" ebs_optimized = false instance_type = "t3.medium" monitoring = true key_name = "ssh_key" subnet_id = "subnet-XXX" vpc_security_group_ids = ["sg-XXX"] associate_public_ip_address = false private_ip = "xxx.xxx.xxx.xxx" source_dest_check = true root_block_device { volume_type = "gp2" volume_size = 8 delete_on_termination = true } tags { "Name" = "sample-ec2" } }
5. バージョンアップにおける自動化 =インフラコード変更 → テスト → 作業時はボタンを押すのみ。 =一定の作業品質、非属人化、リードタイム最小化。 =顧客とサービス運用への寄与。
× ×
最後に... 一緒にプロダクトをより良くし、お客様のビジネスに貢献していき たいエンジニアを常に募集しています。 詳しくは、運営へどうぞお気軽に!!
ご清聴ありがとうございました!