LoginSignup
6
5

More than 5 years have passed since last update.

Microclimateローカル版でアプリケーションの開発を試す

Posted at

Microclimateとは

Microclimateは、IBMが公開しているアプリケーション開発環境です。ひっそりβ版が公開されていましたが、つい最近ひっそりβがとれたようです。

あまり情報が公開されていないので私の独自調査によると、まず、ローカル版とKubernetesのHelm版があります。ローカル版は、

  • ポータル
  • コードの雛形生成(Java,Node.js,Swift)
  • エディタ
  • ビルドツール
  • アプリケーションランタイム
  • モニタリングツール
  • Git連携機能

がセットになっているようです。Helm版はこれに加え、

  • GitLab
  • Jenkins

も合わせてデプロイされますので、ちょっとしたCI/CD環境をすぐに使い始めることができる、ということです。

今回はローカル版を試してみます。

検証環境
- Mac OS
- Docker Community Edition 18.03.0-ce

手順

インストール

公式サイトからダウンロードします。

https://microclimate-dev2ops.github.io/gettingstarted

現時点ではmicroclimate-18.03.zipというファイルがダウンロードできます。これを解凍します。

$ unzip microclimate-18.03.zip
$ cd microclimate-18.03/cli
$ ./install.sh

Dockerイメージのビルドやダウンロードが始まります。通信状況によってはかなり時間がかかりますので待ちましょう。しばらく待つと次のようなメッセージが出ます。

=====================

INSTALLATION COMPLETE

Microclimate has been successfully installed.

Add Microclimate to your $PATH by running one or more of the following commands.

echo 'export PATH="$PATH:/Users/teru/.microclimate"' >> /Users/teru/.bash_profile

Note: These will not reload automatically. Use 'source [ Your file location ]' to reload the path.
For example I would use 'source ~/.bashrc' to reload my .bashrc file.

Alternatively you can run '~/mcdev COMMAND'

言われたとおり、PATH環境変数にホームディレクトリの.microclimateを追加しましょう。

Microclimateの起動

次のコマンドを実行します。-oオプションは開始後に自動でブラウザを開くという意味です。

$ mcdev start -o

すると初回はDockerのネットワーク設定や必要となるイメージのプルなどが始まります。これも時間がかかる場合があるので、気長に待ちましょう。次のメッセージが出れば起動完了です。

Creating microclimate-jmeter-init       ... done
Creating microclimate-theia-init        ... done
Creating microclimate-file-watcher-init ... done
Creating microclimate-portal            ... done

Microclimate has been started at http://localhost:9090

Waiting for Microclimate to start

先ほど -oオプションを付けたので、ブラウザが自動で開かれているはずです。あるいはブラウザで直接 http://localhost:9090/ アクセスしてください。

ポータルの表示

初回は利用規約への合意画面が出ますので合意してください。すると、ポータル画面が表示されます。個人的にはすでに日本語化されていることに驚きました。

image.png

最初は何もないので新規プロジェクトを作成するか、既存プロジェクトをインポートします。インポートの場合はGit、ローカル、アーカイブから選択できます。

image.png

プロジェクトの作成

今回は新規プロジェクトを選んでみます。今のところ、Java、Node.js、Swiftが選べます。今回はとりあえずJavaで。ちなみにプロジェクト名ですが、英小文字と数字しか受け付けてくれません。-や_のような記号は駄目ですし、大文字も駄目です。この制約は結構きついです。

image.png

次に進むとフレームワークの選択をします。個人的な趣味でSpringを選びます。

image.png

作成ボタンを押すとすぐにプロジェクトの生成が終わります。それではコードの編集をしてみましょう。

image.png

コードの編集

コードの編集に進むとWebIDEが開きます。ファイルを見ると、Spring BootのPOMや、Dockerfile、Jenkinsfileなどが自動生成されているのがわかります。

image.png

もちろんここではコードの修正が可能です。

ビルド・ログ

ビルドログを見ると、Mavenによるビルドが自動で入っていることがわかります。エラーがなければアプリケーションも自動起動します。

image.png

アプリケーションを開く

アプリケーションの実行結果が表示されます。

image.png

これだとなんだかわかりませんので、URL欄のパスに/v1/を付けてみます。実は先ほど自動生成されたソースでは、このURIで簡単なメッセージを出力するようになっています。

image.png

アプリケーション・ログ

アプリケーションのログ出力を見ることができます。

image.png

変なコードがたくさん出ているのは、出力時に文字色を変えるエスケープだと思われます。残念ながらこの画面では色は変わらないようです。

アプリケーション・モニター

CPUやメモリの使用状況や、リクエスト数、スループットなどを見ることができます。これは便利ですね。

image.png

ロードの実行

アプリケーション・モニターの画面からロードの実行をすることできます。ボタンを押せば次のように自動的に負荷をかけることができます。

image.png

なお、HTTP Incoming Requestsがちょっと変ですね。時系列が他のグラフと合っていないように見えます。これはご愛嬌。

ここでかけた負荷は、プロジェクトフォルダのload-test/TestPlan.jmxで定義されています。こういった雛形が自動生成されているのはうれしいですね。

image.png

Git連携

変更したファイルはGitでの管理が可能です。

image.png

感想

最低限開発に必要なものは揃っているという印象です。コードや各種設定ファイルがある程度自動生成されるのも便利です。ただ、それ以外は、本格的なCI/CDツールとは比べることはできません。特にWebIDEはやはり本格的な開発には貧弱すぎます。しかし、それは今回Javaを選択したからというのもあります。私見ですが、この手のツールは、開発言語にNode.jsを採用すると一気に化けます。今後どう機能拡張していくのか、引き続き見守ってみたいと思います。

後日Helm版の方も検証してみます。

6
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
5