クラウドをはじめとするITインフラの構成をコードで定義する、いわゆるInfrastructure as Codeツール「Pulumi」を提供するPulumi社は、自然言語からインフラ構成コードを自動生成する「Pulumi AI」を含む、AIを活用した新サービス群「Pulumi Insights」を発表しました。
PulumiはTypeScriptやPython、Go、Javaといった一般的なプログラミング言語を使ってインフラの構成コードを記述できるのが大きな特徴です。Pulumi Insightsは、そのPulumiをベースにした拡張機能です。
AIが130以上のインフラやサービスの構成コードを生成
Pulumi Insightsの目玉機能が、大規模言語モデルのGPT4などを利用してAWSやMicrosoft Azure、Cloudflare、Kubernetes、Datadogなど、130を超えるさまざまなパブリッククラウド、ホスティングサービス、CDN、サービス、ツールの構成コードを自然言語から自動的に生成してくれる「Pulumi AI」です。
Pulumi AIはこのリンク先から誰でも試すことができ、オープンソースとしてコードも公開されています(オープンソースを自分で利用する場合には、別途Pulumi本体のオープンソースのコードやのOpenAIのAPIキーなども必要となります)。
実際に「Create 3 Amazon S3 buckets with cold backup every 2 weeks.」(Amazon S3のバケットを3つ、2週間毎にコールドバックアップをする設定で作ってください)と入力すると、Amazon S3とAmazon Gracierを組み合わせたインフラの構成コードが生成されました。
続いて「Change it to Azure」(これをAzureに変更)と入力すると、今度はAzure Blob Storageとコールドバックアップのためのアーカイブ層に変更された構成コードが変更されて生成されてきました。
さらに、Google Cloud用に変更してもらうと、Google Cloud StorageとColdlineに変更されたコードも生成されました。
Pulumi CLIを利用すると、コマンドラインから自然言語で対話的にインフラを構成することも可能です。もちろん、あとからデプロイされた構成をPulumiのコンソール画面から確認することができます。
コーディングが苦手なエンジニアの参考や、既存の知識の活用にも
クラウド上にシステムを構築する場合、AWS、Microsoft Azure、Google Cloudなどのさまざまな異なるクラウドの多数のサービスと、NginxやSQL Serverなどのアプリケーションやサービス、CDNや監視ツールなど、膨大な組み合わせが存在します。
1人のエンジニアがこれら多数の組み合わせすべてでインフラを構成するコードをすらすらと書けるようになることは容易ではありません。
しかしPulumi AIを使うことで、あまり予備知識のないクラウドであっても簡単にインフラのコードを生成できるだけでなく、既存のクラウドの構成を別のクラウドやサービスに対応する形で書き換えてもらうことで今ある知識を活用することもできそうです。
またコーディングが苦手なインフラエンジニアにとっても、コードの書き方を学ぶ上で参考になるはずで、さまざまなレベルのインフラエンジニアの生産性向上に役立つのではないでしょうか。
自然言語によるインフラ状態の問い合わせも
Pulumi InsightsにはPulumi AIのほかに、ダッシュボードから自然言語でインフラの状態を問い合わせできる「AI Assist for Search」、
インフラの時系列情報を分析することで、インフラの状態についてトレンド分析や予測などを可能にするAnalytics機能などが含まれています。
この記事は新野淳一氏が運営するメディア「Publickey」が2023年4月14日に掲載した『「Pulumi AI」発表。自然言語でAWS、Azure、Cloudflare、Kubernetes、Datadogなど130以上のインフラやサービスのInfra-as-Codeを自動生成』を、テクノエッジ編集部にて編集し、転載したものです。
¥370
(価格・在庫状況は記事公開時点のものです)