OSSの「IaSQL」(Infrastructure as SQL)プロジェクトは2023年2月16日、IaSQLのβ版をリリースした。IaSQLを使用すると、開発者はクラウドにあるITインフラを「PostgreSQL」のSQLとして管理できる。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
オープンソースソフトウェアの「IaSQL」(Infrastructure as SQL)プロジェクトは2023年2月16日、IaSQLのβ版をリリースした。
IaSQLを使用すると、開発者はクラウドにあるITインフラを「PostgreSQL」のSQLとして管理できる。プロジェクトはIaSQLを「『Pulumi』『Terraform』といったIaC(Infrastructure as Code)ツールに代わるものだ」としている。
INSERT INTO aws_ec2 (ami_id, ec2_instance_type_id) SELECT ami.id, ait.id FROM ec2_instance_type as ait, ( SELECT id FROM amis WHERE image_name LIKE 'amzn-ami-hvm-%'ORDER BY creation_date DESC LIMIT 1 ) as ami WHERE ait.instance_name = 't2.micro';
β版の新機能は次の通り。
ダッシュボードをIaSQLのDockerコンテナにバンドルして「Docker Hub」に公開することで、IaSQLをローカルで実行しやすくなった。これによって、下記コマンドを実行してブラウザで「http://localhost:9876」に移動するだけで、IaSQLを試すことができる。
docker run --pull=always -p 9876:9876 -p 5432:5432 --name iasql iasql/iasql
AWSコンソールでリージョンを変更しなくて済むように、デフォルトのリージョン動作で複数のAWSリージョンをサポートする。デフォルトのリージョンは、データベースをAWSアカウントに接続するときに定義される。その上で、IaSQLのデータモデルは、クラウドリソースを表す列で明示的にオーバーライドしない限り、デフォルトのデータモデルを想定したものとなる。
UXを再設計して、インフラストラクチャの変更を自動的に処理できるようにし、クラウドアカウントに対する微妙な、または複雑な変更には、通常のデータベースでのトランザクションと同様の「IaSQLトランザクション」を使うようになった。これは、インフラまたはコントロールプレーンをプログラミングで変更したい場合に役立つ。
AWSのマネージドサービスのサポート範囲を拡大した。具体的には「Amazon EC2」「AWS CodeDeploy」「AWS CodeBuild」「AWS CodePipeline」「Amazon Simple Notification Service」(SNS)、「AWS Certificate Manager」(ACM)、「Amazon Route53」もサポートする。
さらに、タイプセーフが追加されたPostgreSQL関数を使用して「AWS SDK」(Software Development Kit)を直接呼び出すことができるaws_sdkモジュールを追加した。
プロジェクトは「AWSのインフラ構成は複雑だ」という認識を示し、IaSQLのモジュールを使うことで、リレーショナルテーブルとしてクラウドリソースを作成、更新、削除し、AWSと同レベルの構成機能を実現できるとしている。
一方で、汎用(はんよう)モジュールの細かな機能はやりたいことに直結しないことがあるため、特定のユースケースに焦点を当てた簡易モジュールを開発した。例えば、Dockerコンテナを「Amazon Elastic Container Service」(ECS)にデプロイし、ECSだけでなく「Amazon Elastic Container Registry」(ECR)、ACM、Route53も活用してインターネットに公開することができる。この簡易モジュールは、既存のIaSQLモジュールの上にSQLで記述されており、複数のAWSサービスを調整する複雑さを抽象化しながら、必要に応じて内部を参照できることを目的としている。
プロジェクトは「簡易モジュールは、既知のAWSサービスの上に構築され、必要に応じてこれらのAWSサービスに戻すことができる、AWSアカウントでホストされるPaaSと考えてほしい」としている。
β版の次に実装する機能の方向性はIaSQLを使いやすくすることだ。具体的には、AWSでの一般的なセキュリティ脆弱(ぜいじゃく)性を減らしたり、コストを最適化したりするためのSQLテンプレートやドキュメントの継続的な改善がある。
長期的には、サードパーティーのモジュールのサポート、AWSのさらなるサポート範囲の拡大、より多くのクラウドプロバイダーのサポートを追加する予定だ。
Copyright © ITmedia, Inc. All Rights Reserved.