Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Pulumiを触ってみよう

YouYou
August 26, 2023

 Pulumiを触ってみよう

YouYou

August 26, 2023
Tweet

More Decks by YouYou

Other Decks in Programming

Transcript

  1. 目次 • IaCの課題 • Pulumiとは • VS Terraform & AWS

    CDK • Terraformからの移行 • まとめ 3
  2. 課題 Terraform • 独自言語の学習コスト • stateファイルの管理 • ライセンス問題 4 AWS

    CDK • AWSでしか使えない • CI/CD基盤の構築 • プログラミング知識が必要
  3. 5

  4. VS Terraform & AWS CDK Terraform • 独自言語の学習コスト ◦ プログラミング言語可

    • stateファイルの管理 ◦ デフォルトでPulumi Cloud提供 • ライセンス問題 ◦ 真のオープンソースを目指す(らし い) 7 AWS CDK • AWSでしか使えない ◦ GCPやAzureにも可能 • CI/CD基盤の構築 ◦ Pulumi Cloudが構築 • プログラミング知識が必要 ◦ YAMLファイルでも可
  5. Terraformからの移行 8 resource "random_string" "s3_bucket_name" { length = 8 special

    = false upper = false } # Create S3 resource "aws_s3_bucket" "migration_S3" { bucket = "yuta-${random_string.s3_bucket_name.id}" } S3作成サンプルコード
  6. Terraformからの移行 10 import * as pulumi from "@pulumi/pulumi" ; import

    * as aws from "@pulumi/aws" ; import * as random from "@pulumi/random" ; const s3BucketName = new random.RandomString("s3BucketName" , { length: 8, special: false, upper: false, }); // Create S3 const migrationS3 = new aws.s3.BucketV2("migrationS3" , {bucket: pulumi.interpolate`yuta-${s3BucketName.id}` });