データクラウドサービスのAivenを使ってみた

はじめに

アライアンス統括部の佐々木です。今日はAivenを試してみます。

Aivenとは

MySQLやPostgreSQL、Apache Kafkaなどのオープンソースなデータプラットフォームを主要なクラウドサービス上に構築しマネージドサービスとして提供するSaaSです。

オープンソースソフトウェアは誰でもダウンロードして利用することが出来ますが、構築や運用保守にはそれぞれのソフトウェアに対する専門的な技術知識と、それを有するエンジニアが必要です。Aivenはその構築と運用保守をSaaSとして提供することで、利用者が本来注力すべき製品開発に専念することを可能にするサービスです。

なお、本社はフィンランドのヘルシンキ。F-Secureさんと一緒ですね。良いなぁサウナ。

とりあえず、やってみます。

やってみた

フリートライアルに申し込む

AivenのWebサイトにある[Try Now For Free]ボタンをクリックします。

サインアップページが表示されるので、必要な情報を入力し、[Sign up]ボタンをクリックします。

メールしたよ、と言われるのでメールを確認します。

メールが来ていますので、Click hereをクリックします。

Acceptされた旨表示されます。Dashboardへのリンクをクリックします。

Aivenのダッシュボードが表示されます。

構築してみる

サックリ構築してみましょう。右上にある[+ Create a new service]ボタンをクリックします。

[Create Service]画面が表示されます。今回はMySQLを選択してみます。

Cloud ProviderはもちろんAWS、リージョンは東京を選択します。

Service Planは最小であるStartupを選択します。

構築するサービスの名前を入力し(今回は自動で設定される値そのままです)、[Create Service]ボタンをクリックします。

Current Serviceに構築したサービスが表示されます。

しばらく待つとステータスがRunningになります。

接続してみる

構築したサービスをクリックすると詳細情報が表示されます。

手元にあるMacから接続したいので、HomebrewMySQL Shellをインストールしておきます。

% brew install mysql-shell
🍺  mysql-shell was successfully installed!

% which mysqlsh
/usr/local/bin/mysqlsh

mysqlshを使って接続してみます。

% mysqlsh --sql "mysql://avnadmin:XXXXX@mysql-XXXXX-classmethod-7220.aivencloud.com:25911/defaultdb?ssl-mode=REQUIRED"
MySQL Shell 8.0.22

Copyright (c) 2016, 2020, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
Other names may be trademarks of their respective owners.

Type '\help' or '\?' for help; '\quit' to exit.
WARNING: Using a password on the command line interface can be insecure.
Creating a Classic session to 'avnadmin@mysql-XXXXX-classmethod-7220.aivencloud.com:25911/defaultdb?ssl-mode=REQUIRED'
Fetching schema names for autocompletion... Press ^C to stop.
Fetching table and column names from `defaultdb` for auto-completion... Press ^C to stop.
Your MySQL connection id is 670
Server version: 8.0.25 Source distribution
Default schema set to `defaultdb`.
 
 MySQL  mysql-XXXXX-classmethod-7220 defaultdb  SQL >

コマンドを投げてみます。

 MySQL  mysql-XXXXX-classmethod-7220 defaultdb  SQL > show schemas;
+--------------------+
| Database           |
+--------------------+
| defaultdb          |
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.0173 sec)

はい、簡単にMySQLサーバが起動しました!

さいごに

優れたオープンソースソフトウェアはシステムにとって大きな力となりますが、反面使いこなすのはそれなりの労力が必要です。構築から保守までをマネージドで提供してくれて、かつプラットフォームは有名なクラウドサービスに依存せず好きなものを選べる、というのは、製品開発と運用保守のコストを大きく軽減してくれるのではないでしょうか。