Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
20210122_AlibabaCloudパートナーサミット_Terraform_Cloudを活用するマルチクラウドオートメーション.pdf
nezumisannn
January 22, 2021
Technology
0
3
20210122_AlibabaCloudパートナーサミット_Terraform_Cloudを活用するマルチクラウドオートメーション.pdf
nezumisannn
January 22, 2021
Tweet
Share
More Decks by nezumisannn
See All by nezumisannn
リーダーになって1年経過して_取り組んできたことと大事にしている考え方_の裏側_.pdf
nezumisannn
0
20
20211118_GKEにおける高負荷時のPodとWorker_Nodeの挙動について.pdf
nezumisannn
0
15
20211014_Alibaba_Cloud_Container_Service_for_KubernetesにおけるServerless_Kubernetesの概要とManaged_Kubernetesとの違い.pdf
nezumisannn
0
16
20211008_ApsaraDB_for_PolarDBとAWS_Auroraの機能比較.pdf
nezumisannn
1
11
20201203_AlibabaCloudセミナー_ApsaraDB_for_PolarDB_の便利機能と競合DBとの差別化ポイントの紹介.pdf
nezumisannn
0
1
20200617_ビヨンド勉強会_24_Terraformにおけるディレクトリ構造のプラクティスと記述事例.pdf
nezumisannn
0
190
20200522_FGDC_Terraform_CloudでGitOpsを使用したCI_CDパイプラインを構築する.pdf
nezumisannn
0
290
20200208_GCPUG_NARA__5_SpinnakerとGKEを使用した継続的デリバリーパイプライン.pdf
nezumisannn
0
200
20200129_ビヨンド勉強会__22_関西の駆け出しDocker職人に贈るコンテナサマリー.pdf
nezumisannn
0
670
Other Decks in Technology
See All in Technology
Stripe Search APIを利用した、LINEとStripeの顧客情報連携/line-dc-202205
stripehideokamoto
0
120
Power Query 日時の変換でちょっと焦ったケース +1 / Power Query Some cases
ishiayaya
0
150
動画配信技術について
yaminoma
0
210
Steps toward self-service operations in eureka
fukubaka0825
0
440
Data-Driven Healthcare - Techplay
kotaroito
0
110
プロダクション環境の信頼性を損ねず観測する技術
egmc
4
330
Microsoft Power Automate で 始めるRPAと自動化
taikiyoshida
0
2k
AWS CLI入門_20220513
suzakiyoshito
0
3.7k
如何使用 Argo Event& Workflow 快速建置自定義的工作流程 @ #CNTUG #47
line_developers_tw
PRO
0
6.1k
組織でPower Virtual Agentsを導入するために知っておきたいこと
miyakemito
0
1.6k
jaws-ug-asa-datasync-20220510
hiashisan
0
470
モダンデータスタックとかの話(データエンジニアのお仕事とは)
foursue
0
320
Featured
See All Featured
WebSockets: Embracing the real-time Web
robhawkes
57
5k
The Invisible Side of Design
smashingmag
289
48k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
350
21k
Navigating Team Friction
lara
175
11k
The Cult of Friendly URLs
andyhume
68
4.7k
Keith and Marios Guide to Fast Websites
keithpitt
404
21k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
11
4.6k
What's new in Ruby 2.0
geeforr
336
30k
Imperfection Machines: The Place of Print at Facebook
scottboms
253
11k
Building an army of robots
kneath
299
40k
Happy Clients
brianwarren
89
5.5k
Designing for Performance
lara
596
63k
Transcript
Terraform Cloudを活用する マルチクラウドオートメーション Alibaba Cloud パートナーサミット 2021/01/22 株式会社ビヨンド 寺岡 佑樹
自己紹介 resource “my_profile” “nezumisannn” { name = “Yuki.Teraoka” nickname =
“ねずみさん家。” company = “beyond Co., Ltd.” job = “Site Reliability Engineer” twitter = “@yktr_sre” skills = [“Terraform”,”Packer”] }
会社紹介 社名 株式会社ビヨンド 代表 原岡 昌寛 所在地 大阪オフィス 大阪市浪速区湊町 2-2-45 オンテックス難波ビル 10F 横浜オフィス 横浜市中区本町 6-52 本町アンバービル 3-D
四国オフィス 徳島県三好市池田町マチ 2475(旧政海旅館内) カナダオフィス Venture X Canada, 4230 Sherwoodtowne Boulevard, Mississauga, Ontario L4Z 2G6 設立 2007年4月4日 資本金 9,000,000円 従業員 39名 所属 CESA(一般財団法人コンピュータエンターテインメント協会) 日本MSP協会
サービス概要 クラウド/サーバ事業 システム開発事業 WEBサービス事業 設計/構築 + 運用保守(24365の有人監視) Alibaba Cloud /
AWS などのマルチクラウド サーバーサイド開発・ゲーム API開発 WEBシステム開発 予約システム「エジソン」 WEBサイト監視システム「アプミル」
マルチクラウド is 何? • パブリッククラウドにおける構築アプローチの一つ • 複数のクラウドベンダーが提供するサービスを組み合わせて構築する • 1クラウドサービスに依存しない最適な構成を目指すことが可能
なぜやるのか • コスト/性能の最適化 ◦ クラウドサービスそれぞれの利用コスト /性能を比較しながら導入できる • DR対策 ◦ クラウド自体の障害への備え
• クラウドロックインの回避 ◦ 特定のクラウドに依存しない構成を検討できる • 最適なサービスの利用 ◦ 利用したいものを幅広く選定できる
アプローチ例 • 日本向けサービスはAWSを利用 • 中国向けサービスにAlibaba Cloudを利用 ◦ 日中間のネットワーク接続 ◦ ICPライセンス関連
見えてくる課題感 • 構成の複雑化 ◦ 構成が複数クラウドに跨がるため運用負荷があがる • 学習コストの増加 ◦ 複数クラウドを理解していなければ運用が破綻する •
標準化が難しい ◦ クラウドごとに開発・テスト・デプロイ手法が変わってしまう
課題に対する対応策 • 構成の複雑化 ◦ Terraformを用いて統一された言語でインフラを構成管理する (IaC) • 学習コストの増加 ◦ 気合いでなんとかする
• 標準化が難しい ◦ Terraform Cloudでデプロイフローを共通化する
Terraform • Hashicorpによって開発されているツール • マルチプロバイダー ◦ Alibaba Cloud / AWS
/ GCP / Azureなど数々のクラウドサービスの構築を自動化できる ◦ HCL(Hashicorp Configuration Language)と呼ばれる独自言語で記述する • Alibaba Cloud向けのドキュメントやモジュールも豊富 ◦ https://jp.alibabacloud.com/help/doc-detail/91285.htm# ◦ https://github.com/terraform-alicloud-modules
Terraform Cloud • チームでのTerraformの実行を補助するアプリケーション • アプリケーション開発と同じくインフラにもCI/CDのフローを構築できる
Terraform 記述例 • Alibaba CloudもAWSも構文は同じ • Terraformのみ習得すればどちらのクラウドサービスも操作できる resource "aws_instance" "instance"
{ ami = "ami-0f310fced6141e627" instance_type = "m5.large" subnet_id = aws_subnet.subnet.id vpc_security_group_ids = [aws_security_group.security_group.id] root_block_device { volume_type = "gp2" volume_size = 40 } tags = { Name = "test-instance" } } resource "alicloud_instance" "instance" { image_id = "ubuntu_18_04_64_20G_alibase_20190624.vhd" instance_name = "test-instance" instance_type = "ecs.n4.large" system_disk_category = "cloud_efficiency" system_disk_size = 40 vswitch_id = alicloud_vswitch.vswitch.id security_groups = [alicloud_security_group.security_group.id] }
Terraform Cloud 活用例 • Terraformの実行環境を提供(ローカルでの手動デプロイを制限できる) • ディレクトリ単位でコードの変更を検知できる(Automatic Run Triggering) •
Terraformのモジュールを管理するレジストリを利用できる • tfstateの管理ができる Terraform CloudでGitOpsを使用したCI/CDパイプラインを構築する https://beyondjapan.com/blog/2020/04/terraform-cloud-gitops-cicd/
まとめ • マルチクラウドはメリットもあるがデメリットも存在する • 複数のクラウド環境に対する構築及び運用を一元化したほうが良い • Terraform + Terraform Cloudを利用しよう
終わり