Challenge Engineer Life !

エンジニア人生を楽しみたい!仕事や趣味で学んだ技術的なことを書いていくブログです。

はじめてのWindows Azure ~knife-azureでVMの作成・削除~

1月はWindows Azureの無料期間なので、まだまだ学び(遊び?)ます。

昨日書いた「はじめてのWindows Azure ~Chefのプラグインknife-azureの設定~」にて、knife-azureが使えるようになったので、今日はknife-azureを通じて、仮想マシンの作成や削除をしてみました。

ちょっと時間なくてネタ的にはしょぼい…(^^;

ちなみにブログタイトルに反してJava EE全然関係ないじゃん!と思われるかも…ですが、現在の目標は、Windows Azureでknife-azureにて仮想マシンを立てて、chef-soloでGlassFishの環境構築の自動化を目指しています。なので、一応関連ありです(^^;

Knife AzureからUbuntu Linuxの仮想マシンを作成

※昨日までtera-term使ってましたが、今回は別のWindowsマシンでgnupackのminttyからsshを使ったため画面キャプチャが少し違います。

Azureで利用可能なマシンイメージの一覧は

knife azure image list

で取得できます。今回はその中から

f:id:kikutaro777:20140109172218j:plain

を使ってみます。

仮想マシンの作成は簡単でknife azure server createコマンドにオプションを指定するだけでした。

knife azure server create --azure-dns-name 'TestUbuntu1234' --azure-service-location 'East Asia' --azure-source-image b39f27a8b8c64d52b05eac6a62ebad85__Ubuntu-13_10-amd64-server-20140108-en-us-30GB --ssh-user 'hogehoge' --ssh-password 'hogehoge'

hogehogeの部分は真面目に入れて下さい。こうすると以下のように

f:id:kikutaro777:20140109171523j:plain

処理が始まり、Azureの管理画面をみると

クラウドサービスがデプロイされて

f:id:kikutaro777:20140109171529j:plain

仮想マシンも「開始中」となり

f:id:kikutaro777:20140109171534j:plain

しばらくすると「実行中」になりました。

f:id:kikutaro777:20140109171543j:plain

処理が完了すると以下のようにレポート表示されました。

f:id:kikutaro777:20140109171539j:plain

完成までが、あっさりすぎる(^^;

sshで接続してみます。

f:id:kikutaro777:20140109171550j:plain

普通にログインできて、ちゃんとUbuntu Linuxの仮想マシンができてる(^^)便利すぎる。

余談ですが、knife azureのserver createコマンドで、最初「--ssh -user」と半角スペースを入れてたのですが、気づかなくて以下エラーとなって、メッセージから原因が類推できず悩んだりしました(^^;

<span style="font-size: 80%">/var/lib/gems/1.9.1/gems/mixlib-cli-1.4.0/lib/mixlib/cli.rb:229:in `parse_options': ambiguous option: --ssh (OptionParser::AmbiguousOption)
        from /var/lib/gems/1.9.1/gems/chef-11.8.2/lib/chef/knife.rb:300:in `parse_options'
        from /var/lib/gems/1.9.1/gems/chef-11.8.2/lib/chef/knife.rb:280:in `initialize'
        from /var/lib/gems/1.9.1/gems/chef-11.8.2/lib/chef/knife.rb:172:in `new'
        from /var/lib/gems/1.9.1/gems/chef-11.8.2/lib/chef/knife.rb:172:in `run'
        from /var/lib/gems/1.9.1/gems/chef-11.8.2/lib/chef/application/knife.rb:133:in `run'
        from /var/lib/gems/1.9.1/gems/chef-11.8.2/bin/knife:25:in `<top (required)>'
        from /usr/local/bin/knife:23:in `load'
        from /usr/local/bin/knife:23:in `<main>'</span>

「--ssh-user」が正しいです。

Knife AzureからUbuntu Linuxの仮想マシンを削除

今度は作った環境をKnife Azureから削除してみます。

knife azure server delete "TestUbuntu1234" --azure-dns-name "testubuntu1234"

と入力すると、本当に消してよいか?のメッセージがでました。

f:id:kikutaro777:20140109171553j:plain

「y」でyesとすると

f:id:kikutaro777:20140109171557j:plain

2個目のwarningは--purgeオプションを使うと消えるのかな(^^:この辺がまだ理解できていないです。

Knife Azureコマンド

コマンドやオプションについては

辺りが詳しいので、これからコツコツ触って理解していきたいと思います。

はじめてのWindows Azure ~Chefのプラグインknife-azureの設定~

Chef面白そうだな、と思ってつぶやいた所「knife-azure」なるものがあることを教えてもらいました(^^)

日本語の情報を探したところ

knife-azureでWindows Azureを管理する CL LAB

があって、お!簡単そうだ!と思ってやってみたのですが、結構苦戦しました(^^;
自分の問題解決力が低いだけな気もしますが。。。

2014/3/11追記
後日Vagrantで作成したUbuntuでは簡単にknife-azureインストールできました。

knife-azureのインストール

本エントリでは結構複雑な手順になっちゃってますが、もしかすると上記レベルで普通にインストールできるのかも。タイミングあれば別途検証してみます。

上記サイトでは「ホステッドサービス版Enterprise Chef」なるものに登録した手順でしたが、自分はマシンにChefをインストールする所からの手順となります。

ちなみに英語の情報としては

辺りが中心かと思います。

続きを読む

はじめてのWindows Azure ~Ubuntuの仮想マシンを作ってみた~

大学にいたころは日々Linux(当時はRedHatやVine Linux辺り)を中心に使っていましたが、今の会社に入ってからはオンリーWindowsで、入社数年目までは「いつか使うはず…」と自宅にLinuxマシンとか立てていましたが、あまりにも使わないので、もうLinuxを触らなくなって数年が経ちました…(-_-;

で、現在Windows Azureの無料期間で遊んでるわけですが、Azureでは仮想マシンとしてLinuxも普通に立てることができる!とのことで、久しぶりに触ってみることにします。
(という裏にChefとか触ってみたい、というのがあったりなかったり)

今回sslの証明書とかは省いたのですが、10回満たないマウスクリックで起動するなんて…驚きです。
一応キャプチャ取ったので、どれくらいあっさりできるか興味ある方はどうぞ。

仮想マシン作成のメニューを選択します。

Azure画面の左メニューで「仮想マシン」を選んだ状態で左下の「新規」を押すと以下メニューが表示されます。
簡易作成からでもいけますが、ここでは「ギャラリーから」を選択しました。
f:id:kikutaro777:20140106224748j:plain

ディストリビューションを選択します。

Linux系のディストリビューションとしてはUbuntu,CentOS(OpenLogic),SUSE, Oracle Linuxと選べるようです。
f:id:kikutaro777:20140106224948j:plain

一応他のディストリビューションのメニューをキャプチャしてみました。
Oracle Linuxって初めて知りました…。

CentOSのメニュー
f:id:kikutaro777:20140106225620j:plain

SUSEのメニュー
f:id:kikutaro777:20140106225625j:plain

Oracleのメニュー
f:id:kikutaro777:20140106225630j:plain

今回はとりあえずUbuntuの13.10を選択しました。

仮想マシンの構成を設定します。

デフォルトは以下です。
f:id:kikutaro777:20140106225933j:plain

今回はテストレベルなので仮想マシン名とサイズ、ユーザ名、パスワードのみ設定しました。
普通に利用する場合はセキュリティを考慮して証明書の設定をしたほうがいいですね。
(Windows Azure 上の Linux における SSH の使用方法)
f:id:kikutaro777:20140106231309j:plain

続けてDNS名を適当に決めて、地域を「東アジア」にしました。
f:id:kikutaro777:20140106230443j:plain

エンドポイントはデフォルトで以下のようにsshのみが設定となっていました。
今回はとりあえずそのまま。
f:id:kikutaro777:20140106230519j:plain

以上で終わり!

簡単すぎる…。

sshで接続

自分の手元のマシンはWindows 8で、cygwinも入れてないという状態なので、とりあえずTeraTermを入れてssh接続してみました。

Azureで作成されたホスト名あるいはIPを入れて
f:id:kikutaro777:20140106230710j:plain

先ほど設定したユーザ、パスワードを入れて
f:id:kikutaro777:20140106230745j:plain

あっさりログイン!!
f:id:kikutaro777:20140106230759j:plain

すごいですね(^^;なんかWindows Azureっていう名前によって「Windows系のみ?」って思ってしまう(自分も思ってた時期あるんですが…)かもしれませんが、こんなあっさりとLinuxを立ち上げて接続できる代物でした。

はじめてのWindows Azure ~NetBeansのコード生成でJPAからSQLデータベースへ~

昨日書いた

はじめてのWindows Azure ~SQLデータベース作成からNetBeansでの接続まで~

にて、AzureでSQLデータベースを生成して、NetBeansのデータベースサービスと簡単に連携できました。

ということは、ここからNetBeansの自動生成機能を使えば簡単にデータベース処理のWebアプリが作れるわけで、やってみました。

ここに来るとあまりAzure関係ないですね…(^^;
ちなみにWidnows 8 Proの64bitでJDK8、NetBeans7.4でGlassFish4.0にて行いました。

続きを読む

はじめてのWindows Azure ~SQLデータベース作成からNetBeansでの接続まで~

昨日試したAzureでの仮想マシン作成はかなりあっさりできました(^^)

はじめてのWindows Azure ~登録から仮想マシン構築まで~

今日はSQLデータベースを触ってみました。
http://www.windowsazure.com/ja-jp/services/sql-database/

これも簡単だなぁ。なんて便利な時代なんだ…。

SQLデータベース

メニューからSQLデータベースを選択します。

「SQLデータベースを作成します」をクリックしました。
f:id:kikutaro777:20140104003427j:plain

生成するデータベースの情報を入力します。

今回はWebエディションにしました。このエディションではデータベースサイズの制限が1GB,5GBと選べました。
Businessエディションを選ぶと10GB,20GB,30GB,40GB,50GB,100GB,150GBが選べました。

f:id:kikutaro777:20140104003918j:plain

照合順序はとりあえずそのまま。照合順序については以下サイトなど。Windows Server 2008R2のだけど(^^;
http://technet.microsoft.com/ja-jp/library/ms187582(v=sql.105).aspx

で、サーバーで「新しいSQLデータベースサーバー」を選ぶと、ダイアログにメニューが増えます。(上の画像と見比べるとわかりますが、「2」のページができてる。)
この辺のUIが何かカッチョ良いなぁ(^^;
f:id:kikutaro777:20140104004516j:plain

ログイン情報を入力します。

データベースへのログイン情報ですね。saとかはダメー。
f:id:kikutaro777:20140104004617j:plain

f:id:kikutaro777:20140104004713j:plain

この後、環境が作成されます。

管理ボタンを押します。

生成されたSQLデータベースを選択したまま、画面下の管理を押します。
ファイアウォール設定の確認メッセージが表示されるのでOKにします。
f:id:kikutaro777:20140104004841j:plain

f:id:kikutaro777:20140104004851j:plain

Silverlightのインストールをします。

別タブが起動して、私の環境ではSilverlightが入っていなかったため、以下画面となりました。はい、おとなしく入れます(^^;
f:id:kikutaro777:20140104005045j:plain

f:id:kikutaro777:20140104005108j:plain

f:id:kikutaro777:20140104005114j:plain

f:id:kikutaro777:20140104005118j:plain

Silverlightが正常にインストールされたのち、再度アクセスすると今度は以下の画面になりました。
f:id:kikutaro777:20140104005153j:plain

ログオンします。

先に作ったログイン情報を入れてログオンします。成功すると以下のような画面に。おーSQL ServerのManagement Studio的な。
f:id:kikutaro777:20140104005253j:plain

デザインからテーブル作成してみます。

クエリで作れると思いますが、せっかくなのでデザインメニューから作成してみました。
テーブル名入れて
f:id:kikutaro777:20140104005442j:plain

スキーマを決めるだけで簡単です。
f:id:kikutaro777:20140104005524j:plain

クエリでinsertしてみる。

Employeeという超簡単な顧客テーブルを作ったので、レコードをinsertしてみます。
「新しいクエリ」を押すとクエリ入力のモードになるので、そこで
f:id:kikutaro777:20140104005655j:plain
みたいな。で、実行します。
f:id:kikutaro777:20140104005723j:plain
できたっぽい。

select文で確認します。
f:id:kikutaro777:20140104010044j:plain
できてます(^^)

NetBeansのデータベースサービスからつないでみる。

これでDBとテーブルがそろったので、NetBeansでつなげることができれば、そこからスキーマの自動生成したりあれこれできそう…ですね。
これもあっさりできました(^^;

NetBeansを起動して、サービスタブからデータベースを選択します。

右クリックして「新規接続」を選びます。
f:id:kikutaro777:20140104010623j:plain

ドライバの設定をします。

Azureの「Java での Windows Azure SQL データベースの使用方法」ページを読むと普通にsqljdbcのjarを使えばいいようです。

私はSQL Server 2008 R2で接続した際に落としていましたが、なければ以下ダウンロードします。
http://www.microsoft.com/ja-jp/download/details.aspx?id=11774

で、ドライバの一覧にMS SQL Serverのがない場合は「新規ドライバ」を選択します。

f:id:kikutaro777:20140104011355j:plain

追加ボタンで落としたjdbcのsqljdbc4.jarなどを指定します。
以下スクショでの名前が2005となってますが、適宜読み替えて下さい(^^;(自分で入れてないのでNetBeansで自動に読み込まれた気が…)
f:id:kikutaro777:20140104011645j:plain

f:id:kikutaro777:20140104011656j:plain

以下画面となります。
f:id:kikutaro777:20140104011744j:plain

接続情報を確認します。

Azure側で簡単にJDBC URLの確認ができました。

生成されたSQLデータベースを選択します。
f:id:kikutaro777:20140104012637j:plain

以下のような画面になるので、下のほうにある「データベースに接続する」の「~接続文字列を表示する」をクリックします。
f:id:kikutaro777:20140104012738j:plain

f:id:kikutaro777:20140104012911j:plain

すると以下のようなダイアログが表示されます。
f:id:kikutaro777:20140104012935j:plain

一番下のJDBC接続情報をコピーして、そのまま先ほどNetBeansで表示されたダイアログのJDBC URLにペーストします。
パスワードを入れて「接続をテスト」して成功すればOKです。なんて楽なんだ…。
f:id:kikutaro777:20140104013108j:plain

ちなみにホストとポートの部分は自動で読み取って反映してくれました。
あとでNetBeansuでJPAのエンティティを自動生成したり、というのを考えると本当はデータベース名やユーザ名、パスワードをベタにいれるほうがいいのかもしれません。(ここら辺はまた今度)

スキーマはdboを選択しておきます。

f:id:kikutaro777:20140104013428j:plain

接続名を入力します。

デフォのままでもいいです。NetBeansのデータベース一覧に出る名前となります。
f:id:kikutaro777:20140104013609j:plain

NetBeansで確認する。

できてる!
f:id:kikutaro777:20140104013639j:plain

select文をNetBeansから投げてみます。
f:id:kikutaro777:20140104013717j:plain

おー!

これであとはJPAでゴニョゴニョできる!けど、それはまた次回に(^^;

はじめてのWindows Azure ~登録から仮想マシン構築まで~

Windows Azureの1カ月無料評価版に登録しました。恥ずかしながら初クラウド(^^;

当たり前といえば当たり前ですが、Windows Server 2012 R2の起動までが予想以上にあっさりとできて感動しました。

せっかくなので手順をまとめておきます。

Windows Azure 無料評価版の登録手順

Windows AzureのHPにアクセスします。

http://www.windowsazure.com/ja-jp/

画面右上の「無料評価版」をクリックします。

f:id:kikutaro777:20140103014801j:plain

「今すぐ試す」をクリックします。

f:id:kikutaro777:20140103014402j:plain

Microsoftアカウントでログインします。

アカウントがない場合は新しく作成する必要があります。
http://www.microsoft.com/ja-jp/msaccount/default.aspx

f:id:kikutaro777:20140103015114j:plain

続きを読む
にほんブログ村 IT技術ブログへ
にほんブログ村 にほんブログ村 IT技術ブログ Javaへ
にほんブログ村