Challenge Engineer Life !

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

JJUGナイトセミナー Javaクラウドプラットフォーム大特集に参加しました!

今日のJJUGナイトセミナーは超豪華でした!仕事を置いてきてでも参加してホント正解(^^)!会社後輩は1人しか来なかった…のですが、ホントもったいないと思う…。

jjug.doorkeeper.jp

発表は以下順番でした。

  1. Heroku
  2. Amazon Web Service
  3. Microsoft Azure
  4. Oracle Java Cloud Service
  5. Cloud Foundry
  6. Google Cloud Platform
  7. OpenShift
  8. IBM Bluemix

当日のつぶやきは既に@yamadamnさんにてまとめられています!

以下、発表者の方のスライドと、過去に自分が触ったときの記事とか合わせて簡単に。

Heroku

Herokuは前にSalesforce Summer(だったかな?)に参加したときに、セッションを聞いて触ってみてました。当時の自分は、Heroku = Ruby on Railsのイメージが凄く強かったのですが、実際に触ってみると、Javaも簡単に動かせて驚いた記憶があります。

今日の発表でも「Spark」に少しだけ触れられてましたが、Sparkのひな形が用意されていて、そこからPayara Microいけるんじゃ?って思った記憶が。

ということで、以前試したHeroku

kikutaro777.hatenablog.com

とPayara Microについて

なお、タイトルにある「12-Factor App」は以下。

12factor.net

日本語訳もあるですね。

12factor.net

AWS

自己紹介の話を聞いてJavaFXの話が聞きたくなりました(^^)w

AWSのBeanstalkは、Docker + GlassFishが使えると聞いて、前に試してました。これも手軽なんですよねー。

kikutaro777.hatenablog.com

他のPaaSに比べて中身の透明性がある(AWSの仕組みで構成されているという意味で)、というのはなるほどーという感じでした。

Azure

OracleでMicrosoftのてらださんがお話をされるという、聞いてる側もまだ何だか不慣れな感じでした(^^;笑

今のMicrosoftはすごくオープン、と強調されてましたが、色んなニュースが続きますよね。

MSがEclipse Foundationに参画したり
www.publickey1.jp

ASP.NETがLinuxで動くとか、先日なんてMS SQL Server on Linuxとか、「は!?」って感じですよね(^^;

jp.techcrunch.com

Azureは自分も一時期いろいろ触ってました。記事としては古いので注意ですが。

kikutaro777.hatenablog.com

Oracle Java Cloud Service

OracleさんのPaaSはまだ触ったことがないのですが、Java Cloud ServiceとApplication Container Serviceの2種類があるとのこと。両方ともFlight Recorderが使える辺りは便利そうですよね。
無料お試しとかあるのかな…。なんとなく気軽に触ってみることができるのか、気になりました。

あと、Java Cloud ServiceはWebLogicだけなのがちょっと残念。GlassFishがあれば…。

Cloud Foundry

Cloud Foundry、よく名前は聞くのですが、全然触ったことないのと、前提知識が薄かったので、今日の@makingさんの発表で勉強になりました!

個人的には「.NETが動く」というのに驚きました。Azure以外でそんなのあるのか!と

3/31にCloud Foundry Tokyo Meetupイベントがあるとのことです!
www.meetup.com

あと、発表者の@makingさんから教えて頂きましたが.NETまわりの仕組みとか聞けるかもです(^^)これはいってみたい。

ハンズオン形式のワークショップもあるそうです。

connpass.com

connpass.com

Google Cloud Platform

やっぱりGoogleの基盤はすごそうだなーと。そして日本にデータセンターという話もホットだったんですね。

www.nikkei.com

OpenShift

Red HatのOpenShiftは、今、自分の中では一番良く利用するPaaSです。発表にもありましたが、無料で使えるPaaSが減ってる中、Java EEのAPサーバ含めて無償枠があるのが嬉しいです。

OpenShift Onlineは現在v2で、v3からはDockerを主軸としたアーキテクチャでガラっと中身を変えたとのこと。

もうすぐv3版のOnlineもでるとのことで、個人的に超たのしみです。

@nekopさんがブログ書かれていました。

nekop.hatenablog.com

OpenShiftを初めて触ったときのエントリもありました(^^;

kikutaro777.hatenablog.com

ちなみに、最近乃木坂46にどハマりしてる自分なのですが、OpenShift上のWildFly + Twitter4Jで以下アプリのっけてます。

Sakamichi46 Collection

作成動機などは以下(^^;;

nogizaka46.hatenablog.jp

脱線しすぎました。

IBM Bluemix

資料はまだでしたが、Blumixも色々面白そうですよね。話題のWatson君とか、IoT関係なども。


ということで、ホントすごく豪華でした!どのPaaSにするか、やっぱり色々触ってみるのがいいですよね(^^)自分の場合は8個中4個は触ったことありますが、少し前なので、それぞれ色々変わってる気がします。触ったことがない中では、やっぱりCloud Foundryが一番気になりました。

触ってみよー。

GoAzure 2015に行ってきました

昨日、ベルサール渋谷ファーストで行われた「GoAzure 2015」に行ってきました。

【Japan Azure User Group】GoAzure 2015

f:id:kikutaro777:20150117181033j:plain

最近ちょっと忙しくなってしまい、行かない予定にしていたのですが…行かなかったら後悔しそうだなぁと思って急遽承認もらって参加。

結果的には「行って良かった!!」(^^)

残念ながらフル参加できず、夕方で帰社でしたが、すごい熱気を感じたし、MSさんがエンプラクラウド本気なんだなーとか、着々とオープン系になってるんだなー、とか、ニュースでは聞いていたものを、目の当たりにして改めて実感しました。

Keynote 1

US MSのScott Hanselmanさんによるプレゼンでした。メチャメチャ面白かったです。

特にデモが熱くて、冒頭のMinecraft使ったクラウドの表現、Azure利用した作ったというディクテーションのデモ、Macでsublime textを使ったインテリセンスのデモ、そして最後は事前の予定になかったという聴講者のノートPC借りてのデモ。どれもすごかったです。

デモの合間にわかりやすい表現による技術説明も多々あって、事前知識があまりなくても十分楽しく理解できるプレゼンでした。すごい。

個人的にはここ数年Javaで、すっかり.NETが遠い昔の存在になってしまったのですが…あらためてやりたいなー(^^;;とふつふつ。すげー進化してる。

Keynote 2

日本MSの澤さんによるお話でした。

Azureのデータセンタの大きさとか堅牢さとか、興味深い話がたくさんでした。

途中はIIJさんやEQUINIXさんからAzureの閉域網サービスに関する紹介などがあり、エンタープライズを強く意識したサービス提供してるなぁと。

お昼

ランチセッションは登録してなかったので、とりあえず仕事しよう…と思ったけど、意外と座る場所が少なくてちょっと悩ましかったです(^^;良い天気だったので、外でおにぎり食べながらExcel設計書を書いてました…。

Infrastructure as Code for Azure

午後イチはAzureにおけるインフラ自動化のセッションへ。

去年、自分もAzureでとCLIとかChefで少し遊んでたので、話はとても聞きやすかったですが、1年で色々進化している感じが(^^;

Dockerが出てきて、おお、Windowsで!?と興味深々だったのですが、Linuxでした(^^;が、動いてるのはASP.NETで、うわーホントにLinuxで動いてる!と、ちょっと感動。うーんすごい。

運用管理とセキュリティで考えるAzureのエコシステム

セッション概要に惹かれて行ったのですが、冒頭ずっとNTTデータさんのHinemosの紹介話が続いたので、途中で抜けて以下のPHPアプリの話聞きにいっちゃいました(^^;

Azure Websites で作るスケーラブルな PHP アプリケーション

途中からでしたが、色々と興味深かったです。
PHP自体は10年前に大学で触っただけ、というレベルなので、もはや昨今のバージョンやフレームワークについては全然知らないのですが、Azure上でスケーラブルな、という観点の話が良かったです。

インスタンスが複数になったときのセッション情報との関係とか。

ちなみに以下つぶやきしたら、AOEさんが教えてくださいました!


標準エンタープライズ Java 開発 on Microsoft Azure

日本Oracleの寺田佳央さんとMSの佐藤直生さんによるセッションということで、すごい組合せの光景をみてました(^^;

会場もTwitterも色んな意味で盛り上がってましたw @normalianさんがtoggeterにまとめられてます。

佐藤さんのツッコミが面白すぎて、個人的にはお二人の漫談をみてる感じでメチャメチャ楽しかったです。

「Strutsですか!」とか

「GlassFishって、どうなっちゃったんですか?」とか

そしてTwitterでも怒涛のツッコミ

寺田さんがJava EE on Azureで作ったWebアプリのデモで芸能人検索してたのですが、(場の流れもあって)残念ながら堀北真希でなく綾瀬はるかを検索されていたのが少し寂しかったです(冗談です)

SendGrid

見に行けなかったのですが、後輩がHackFestのスピーカーやってました(^^)/


まとめ

残念ながら夕方までの参加だったのですが、それでも会場の雰囲気を味わってすごく楽しめました。

未だに、ちょっとしたデモ環境のためでもPCを調達して、自分でサーバ立てて、グローバルIPとって、アプリ設定して、ってやるオジサマもいらっしゃる環境ではありますが…。時代に置いて行かれないためにも、こうしたイベントはできる限り参加していきたいなと思います。

「Windows Azureを利用したDevOps入門」というタイトルでGlobal Windows Azure Boot Camp 2014 in Japanで発表させて頂きました!

昨日、品川の日本マイクロソフトさんにて「Global Windows Azure Boot Camp 2014 in Japan」が行われました。

http://jazug.doorkeeper.jp/events/9216
f:id:kikutaro777:20140329230050j:plain

詳細は上記サイトをみてもらうほうが良いですが、世界130国以上で同時開催されるイベントで、なんと!その発起人でもあるMagnusさん(@noopman)もスウェーデンから来日されての参加、というかなり豪華なイベントでした(^^)

セッションはWindows Azureコミュニティ(JAZUG)のコアメンバの方々をはじめ、日本マイクロソフトさんの中で働かれている方やスポンサーであるGraniさんに所属されている方など、豪華メンバによる発表で非常に勉強になりました。

スピーカもされていた日本マイクロソフトの田中隆三郎さん(@rewtheblow)が早速ブログでイベント報告されていました~

Heart and Soul
Global Windows Azure Boot Camp 2014 in Japan
http://blogs.technet.com/b/rytanaka/archive/2014/03/29/global-windows-azure-boot-camp-2014-in-japan.aspx

で、そんな豪華メンバの中、なぜか私も発表の機会を頂き……発表してきました(^^;

きっかけは、昨年のJava EE Advent Calendarがきっかけで(Web上で)知り合った、割と普通さん(@normalianさん(Microsoft MVP for Windows Azure!))からお声かけを頂いたことでした。

Windows Azureは今年のはじめ、無料評価版を触って色々遊んでるレベルだったので、そんな場で自分がこんな場で発表なんてしていいものか…と悩みつつ、せっかくお声かけ頂いたので勇気を出してチャレンジさせて頂きました(^^;

とりあえず発表のスライドは以下にあげています。

デモは…リアルタイムには絶対上手くできないと思ったので(^^;事前に動画とってたのを流しながら説明しました。

一応YouTubeに上げて、以下スライドにもリンクを貼ってますが、言葉での説明がないと少しわかりにくいかもしれませんm(_ _)m

とりあえず、自己体験の恥ずかしい開発現場のことを赤裸々にさらしつつ(後で怒られたりして(^^;でも事実だし…)…改善の取組みや、その上での課題、そして今後やりたいなぁと思って個人的にWindows Azureを利用しながら触ってみたツールに関して、まとめています。

懇親会も参加させて頂きましたが、発表に関してとても嬉しいコメントを頂いたりして(;_;)とてもありがたかったです!

日本DCもできて今年はWindows Azure、否、Microsoft Azureへの注目がますます高まりそうです!まだ触ったことがない方も、まずは無料評価版を試して、どんなことができるのか?是非試してみるのがいいのではないでしょうか(^^)

JAZUG(Japan Windows Azure User Group)コミュニティは「ゆるふわ」を目指しているだけあって、とても温かい雰囲気なので、とりあえずイベントに行ってみる感じでもいいのかなと(^^)

knife-azureのインストール

気が付けば3月が11日も経過してて、以下イベントの発表準備をそろそろ本格的にやらないと…(^^;声かけて下さったAzure MVP様のためにも、それなりの発表をしたい。仕事終わってからコツコツ頑張らないとー…。

Global Windows Azure Boot Camp 2014 in Japan
http://jazug.doorkeeper.jp/events/9216

……

前に書いた「はじめてのWindows Azure ~Chefのプラグインknife-azureの設定~」では、Azure上にUbuntuの仮想マシンを立てて、そこで色々やってたのですが、最近Vagrantを(やっとこ)触るようになって、Vagrantで準備したUbuntuからChefのknife-azureを使ってみました。

簡単にknife-azureのインストールできたので、多分こっちが普通なのかなと…(^^;
(前のはもう一回検証したほうがいいのかも)

UbuntuはVagrantBoxのリストからOfficial版を選んで、13.04と13.10両方で確認しましたが、同じ手順でいけました。

http://www.vagrantbox.es/
f:id:kikutaro777:20140311132437j:plain

vagrantは

vagrant box add ubuntu1310 http://cloud-images.ubuntu.com/vagrant/saucy/current/saucy-server-cloudimg-amd64-vagrant-disk1.box
vagrant init ubuntu1310

とするだけ。ダウンロードは…あいかわらず結構待ちますね。

その後、sshでログインして、以下コマンド打つだけでknife-azureのインストールは完了です。

curl -L https://www.opscode.com/chef/install.sh | sudo bash
sudo aptitude install ruby1.9.1-dev
sudo gem install knife-solo --no-ri --no-rdoc
sudo gem install knife-azure --no-ri --no-rdoc

Ubuntu13.10ではRubyが1.9.3だったけど、devは1.9.1のを入れて動かしてました。

あとは、「はじめてのWindows Azure ~Chefのプラグインknife-azureの設定~」で書いたように、knife-configureしたり、サブスクリプションファイル配置を行えばknife-azureのコマンドを利用可能。

knife azure server create --azure-dns-name 'UbuntuByKnifeAzure'
  --azure-service-location 'Japan East' 
  --azure-source-image 'b39f27a8b8c64d52b05eac6a62ebad85__Ubuntu_DAILY_BUILD-saucy-13_10-amd64-server-20140219-en-us-30GB'
  --ssh-user 'hogehoge' --ssh-password 'hogehoge'

みたいにコマンド打てば、あっさりAzure上に仮想マシンができます。vagrant便利だなぁ…。

Windows Azure PowerShellのNew-AzureQuickVMコマンドでCurrentStorageAccountName is not accessibleエラーが出た場合の対処

少し前にChefのknife-azureで仮想マシンの作成を試しましたが、AzureではPowerShellやDOSプロンプトで使えるコマンドツールも提供されているので、仮想マシンを作成するだけなら、これらのツールだけでもできるんだよなぁ、と思いつつ、実際には触っていなかったので試してみました。

http://www.windowsazure.com/ja-jp/downloads/
f:id:kikutaro777:20140310111136j:plain

今回試したのはPowerShellのほうです。

Windows Azure PowerShellに関しては以下サイトを参考にさせて頂きました。

Windows Azure PowerShell Cmdletを試そう! -シグマコンサルティング株式会社-
Windows Azure PowerShell を使ってみる -蒼の王座-

で、New-AzureQuickVMコマンドで仮想VMを作ろうとしたら、自分の場合はCurrentStorageAccountName is not accessibleエラーになったので…対処した方法について備忘。

とりあえず、Windows Azure PowerShellのインストールもキャプチャ取ってたので一応貼っておきます。

Windows Azure PowerShellインストール

ダウンロードリンクに矢印入れた図

exeファイルがダウンロードされるので実行します。
f:id:kikutaro777:20140310112359j:plain

実際のインストールモジュールダウンロードはexeの実行で始まるようです。
f:id:kikutaro777:20140310113001j:plain

f:id:kikutaro777:20140310113007j:plain

インストール対象のWindows Azure PowerShellの詳細情報が表示されます。
f:id:kikutaro777:20140310113116j:plain

f:id:kikutaro777:20140310113203j:plain

f:id:kikutaro777:20140310113209j:plain

f:id:kikutaro777:20140310113215j:plain

f:id:kikutaro777:20140310113230j:plain

今回入れたWindows Azure PowerShellが「インストール済」になったこと確認。
試した環境ではすでにCommand Line Toolsは入れていたので「インストール済」となっていますが(^^;
f:id:kikutaro777:20140310113250j:plain

その後のモジュール設定や認証ファイルのインポートは最初にあげた参考サイトと全く同じでいけたので省略。

New-AzureQuickVMコマンド

CurrentStorageAccountName is not accessible

MSDNのページをみるとNew-AzureQuickVMコマンドで仮想マシンを簡単に作れるようです。

試しにLinuxマシンを以下コマンドで作ろうとしたら

New-AzureQuickVM -ImageName "b39f27a8b8c64d52b05eac6a62ebad85__Ubuntu-12_10-amd64-server-20140202-en-us-30GB"
  -Linux -LinuxUser "hogehoge" -Password "hogehoge" -ServiceName PowerShellLinux

エラーになりました。
f:id:kikutaro777:20140310144851j:plain

「CurrentStorageAccountName is not accessible.」とのこと。

ググってみたところ英語情報はたくさんありました。その中から以下ページを参考に。

AZURE POWERSHELL – CURRENT STORAGE ACCOUNT ERROR WHEN MAKING A NEW VM

Get-AzureSubscriptionコマンドで確認すると

f:id:kikutaro777:20140310193920j:plain

上記のようになっており、下から3つ目にある「CurrentStorageAccountName」が空白になっているためエラーとなるようです。

で、せっかくWindows Azure PowerShellを入れているので、コマンドからここに設定しよう!と参考の海外サイトには書いてあるので、やってみました。(既に何らかストレージが設定されてる想定)

f:id:kikutaro777:20140310164747j:plain

上記コマンドで、Get-AzureStorageAccountコマンドで取得されるデータのLabel属性を名前にします。

Set-AzureSubscription -SubscriptionName "無料評価版" 
  -CurrentStorageAccountName (Get-AzureStorageAccount).Label -PassThru

f:id:kikutaro777:20140310164818j:plain

反映されていれば成功です。
f:id:kikutaro777:20140310171147j:plain

ちなみにPassThruって何だろ、と調べたら以下サイトがすごく丁寧に説明されていたので、ここでは省きます。

PowerShellの-PassThruパラメータについて

Only one of parameters.AffinityGroup, parameters.Location may be provided.

CurrentStorageAccountName is not accessibleのエラーは解決したので、いけるかなと思ったら続けて以下エラーが出たので

f:id:kikutaro777:20140310173104j:plain

アフィニティグループを作成して、末尾に「-AffinityGroup アフィニティ名」のオプションを加えました。

で、実行すると
f:id:kikutaro777:20140310195920j:plain

今度は成功!
f:id:kikutaro777:20140310195945j:plain

うーむ、これだけでLinuxマシン作れるのは手軽だなぁ。すごい時代になったもんだ(^^;今の会社では全然Linux使わないのだけど、バリバリ使ってた大学時代に欲しかったなぁ。ってか、ChefもLinuxだと楽だし、サーバサイドだけでも会社でLinuxメインにしたい…。

Visual Studio OnlineからチェックイントリガーでWindows Azureへ自動デプロイ

ブログタイトルのJava EEに反して、今日は.NET、というかVisual Studioについて(^^;

Visual Studio 2013 Ultimate(90日評価版)を使って、Visual Studio Online上のチェックインをトリガーにWindows Azureへデプロイする流れで遊んでみました。当たり前だけど、この辺、相性抜群なんだなぁと改めて思ったり(^^;

ほとんど以下MSさんの資料手順通りなのと、既にこんなの多くの人が(運用レベルでも)やってると思うので、今日のエントリはあくまで個人的メモです。

図にするとこんな感じ

f:id:kikutaro777:20140305225354p:plain

続きを読む

Windows Azure 4周年記念 & Japan DCオープンマジデシタ!参加レポ #azurejp #jazug

本日2/26はWindows Azureのデータセンタがめでたく日本国内で(東西2箇所)ローンチされた日で、それに伴って、品川の日本マイクロソフトさん本社で以下のイベントがあったので参加してきました。

終始すごい熱気があって盛り上がってた!!まさにお祭りな感じでした(^^)

http://atnd.org/event/2014azurejpdc
f:id:kikutaro777:20140226222020j:plain
f:id:kikutaro777:20140226222520p:plain

会議室みたいな所でやると思いきや、会場はMS1階のオープンフロアみたいな所で、立ち見形式でした(^^;
ホントのお祭りみたいに屋台が出てたりクラウディアさんがいたり…びっくり。

2時間近く立ちっぱなしだったのですが、幸いにも最前の2列目くらいで聞けたのでまとめようかなと。
後ろのほうは、ずっとガヤガヤガヤガヤ盛り上がってて(^^;あれ、どれくらい話が聞こえてたのかな(笑

挨拶&鏡開き

冒頭、MSのUS本社から(お名前聞き取れなかったのですが…)来られた方から英語であいさつのメッセージがありました。
そして日本っぽく、鏡開きw めでたいw

f:id:kikutaro777:20140226190447j:plain

伊藤かな恵さん登場

ここから撮影禁止タイムですー、と案内があって何事かと思ったら、Azureの「安曇瑠璃」なる公認キャラの声優を担当されてる方がゲストでいらっしゃってました(^^;

自分自身、キャラがいることもあまり知らなかったので、以下の記事をスマホで読みながら見てました(笑

伊藤かな恵も電撃参加!日本マイクロソフト・冬コミ出展の本気っぷりに迫る!! 楽天WOMAN
http://woman.infoseek.co.jp/news/entertainment/otapol_5981

ちなみに安曇瑠璃を含む今日のローンチ用に作られたという動画が流されてましたが、かっこよかった!

今日、司会をされてたMSのAzureエバンジェリストの方(砂金さん)のブログに、MSで公開されてる動画の見方が細かく書いてあった(^^;
というか、今日のイベント含めて書かれているので必見な感じですね。

Azureの鼓動
http://blogs.itmedia.co.jp/isago/

そして無事動画が家でもみれましたw

f:id:kikutaro777:20140226225153j:plain

と思ったらYouTubeにもあがってた(^^;

で、そんな伊藤かな恵さんへの質問タイムなど続いた後、クラウディアさんの声優をされてる方のビデオメッセージが流れたりしてました。

家に帰ってからTwitterみてたらこんなのが(^^;↓
かわいい(笑

どうも、最前列にいた方々は声優さんのファンの方が多かったようで、終わった後に前がガラっと空いたのがシュールでした。

クラウド業界パネル

で、ここからやっとこ本格的なAzureに関するお話。

3名のパネラーの方へAzureに関する質問とお話、といった感じでした。

お二人ほど以下所属してるらしい。こんなのあるのかー。クラウドに疎いので全然知らない(^^;

一般社団法人クラウド利用促進機構(CUPA)
http://www.cloud.or.jp/

Azureの良い所としては、MSさんの幅広いサポートがあるとのこと。使う側からすると大きいですね。
また、日本にデータセンタができたことで、提案の上で強みとなるとのこと。今までだと日本にデータセンタがないから、というのを理由に候補から降ろされることも多々あったとか。

あとは声優さんが呼べるようなコミュニティがうらやましいとかw 面白い話も混じったパネルでした。

Windows Azure ユーザー事例

ユーザ事例として2つほど話がありました。

1つ目は株式会社マインドパレットさんのSNAPEEEというサービスでの利用話でした。
どちらかというと女性向けっぽいですが、写真をデコったりしてシェアできるという面白そうなサービス。

http://snape.ee/
f:id:kikutaro777:20140226230512j:plain

iPhoneやAndroidのアプリがあるそうですが、残念ながらWindows Phoneでは動かないらしい(^^;苦笑が起きてたw

Azureだけではなく、AWSも利用したハイブリッド構成とのこと。

Azureの良い所として、ここでもMSさんのサポートに関して触れられていて、対応が丁寧らしく、サービスを運営していく上で心強いとのこと。その他、安定性なども挙げられてたかと。

逆にBadな点としては、Windows Updateによる再起動を挙げられていました。また、JavaやRubyなど、わりとオープン系な技術を利用されているとのことで、AzureだとAzureのメリットを最大限に生かすためにはサーバや言語をMS系にする必要を感じる、と話されてました。

ユーザ事例のもう1つはCircle.msの方によるコミケカタログなるサービスでの話でした。
(※2/28修正時点まで所属を誤って記述してしまっていました。大変失礼致しました。)

https://webcatalog.circle.ms/Account/Login?ReturnUrl=%2f
f:id:kikutaro777:20140226231124j:plain

サイトをみてみたら下にpowered by Azureのロゴが!

コミケの説明文をうまく穴抜きにしてAzureの文字を埋めることで良い文章になるプレゼンスライドが面白かったです。印象に残りやすい。
表現の可能性を広げるための場としてAzureがある、とのこと。

告知系

ユーザ事例のあとは、Windows Azureに関する色々な告知が続きました。

最初はWindows Azureがゲーム関連の業界誌から優秀賞を受賞したという話。

立ち見でパソコンによるメモが取れなかったので細かくメモれてないですが、GameBusinessとか聞こえていたので、多分これかと

https://www.iid.co.jp/news/detail/2014/0129.html
f:id:kikutaro777:20140226231816j:plain

続けて、インプレスビジネスメディアのThink ITで過去に行われたインストールマニアックスなるイベントの話から、チューニングマニアックス(仮)的な企画をする予定です、という告知が。

昔のAzureはOSSとか入れるの大変だったみたいですね(^^;

自分が1月にAzure初めて使ったときはスゲー簡単にLinux使えたりしたので、まったくイメージできない(^^;

そして、最後は、一般社団法人Azure Council Experts、略してACEに関する案内でした。

http://a-c-e.biz/
f:id:kikutaro777:20140226232528j:plain

既に11社ほどの企業が参画していて、イベントなども定期的に行ってるとのこと。

あと書籍も出してるとのこと。

WindowsAzure エンタープライズクラウドコンピューティング実践ガイド
Azure Council Experts
日経BP社
売り上げランキング: 18,981

Azuringなる名前のイベントをされてて、名前はエバンジェリストの方いわく、当初はエゥーゴとつけたかったとかw Zガンダム!?

中締め

で、以上で一旦中締めとなり、一本締めしました。

JAZUG Deep LT

最後はJAZUG(Japan Windows Azure User Group)のメンバによるDeep LTでした。

JAZUGではLTがすごい盛り上がるらしい(^^;

合計で10個のLTでした。

各発表者やタイトルはイベント告知のページにのってるのと、発表者の方によってはSlideshareなどにあげられるそうなので、Twitterで#jazugや#azurejpのハッシュタグを探すのがいいかと思います。
http://atnd.org/event/2014azurejpdc

どれも面白い発表でしたが、個人的にすごく印象に残ったのはUSのMS本社でAzureを開発してるという@superriverさんの話でした。日本の方です(^^)!

Azureの開発では詳細設計書とかないよ!社外サービス使えないとかないよ!みたいな笑いをとりつつ

Azureの開発では毎日のようにデプロイしてるし、それを効率化するために自動化してる。使っている皆をワクワクさせたいから、どんどん開発する。

で、そういう風にプログラムを変更すること=結果的にお客さんへ価値を届けること。

といったお話で、個人的にすごく心に刺さる話をされてました。

なんというか、過去に他人から運用フェーズ直前に引き継いだシステムで色々痛い目をみた経験がある自分は、新しい仕事での開発でも心のどこかで変更とか改造にトラウマをもつようになってたりしてて。

リグレッション試験はいつも人手とかで効率悪いし、ビルドはビルド職人だし…みたいな環境を変えたく、ユニットテストからインテグレーションテストの自動化したり、Jenkins入れて自動ビルドや自動デプロイできるようにしたり、と環境を整えることはそれなりにやってきたけれど。

それはデグレとかのバグ防止、って意識が強くて、ワクワク感とかいつの間にか全然忘れてるーーー(>_<)って感じでした。

ということで、やっぱりもっと楽しみながら開発したりしたいなーと。

ちょっと脱線しましたが。

LTでは色々なイベントの案内もありました。

※Facebook Group利用となったとのこと。上記はJAZUGのサイトで、FBリンクがあるページです
※女子部もあるとのことで、その辺も上記ページに

※札幌支部ができるとのこと

世界同時開催!?

感想など

私は冬休みにまとまった時間があったのでAzureの無料期間に登録して遊んでみたことが、Azureに興味を持つきっかけでした。

このブログでも「はじめてのWindows Azure」的な感じで試したことをまとめたり。
http://kikutaro777.hatenablog.com/archive/category/Windows%20Azure

それまでクラウドを実際に触ったことがなくて、AWSかAzure触ってみたいなぁと思いながら、触らない日々が続いてて(^^;

で、実際触ってみると思ってたより全然簡単だし、便利だし、面白いし、ということで今日のイベントにも参加する流れとなりました(^^)

今日のイベントはMSさんで行われていたこともあって、OracleやJavaネタが若干いじられ系となるのが切ない気もしつつ、日本人開発者の方がLTの中でも話されていたようにAzureはLinuxだろうが何だろうがWelcomeで、いろいろとオープン系使ってるエンジニアも楽しめるんじゃないかなと。とりあえず、自分は今後もAzureは追っていきたいなぁと思いました(^^)楽しかった

はじめてのWindows Azure ~WebLogic Server 12cの仮想マシン構築~

早いものでWindows Azureの無料試用期間も残り15日。まだ色々遊んでみたい(>_<)

私は今までJava EEのAPサーバはGlassFishしか使ったことないのですが、なんとWindows Azureの仮想マシンには意外にもWebLogic Serverの選択肢があるとのこと!

それは触ってみないと、ということで仮想マシン構築してみました。

Windows AzureとWebLogic Serverに関しては@normalianさんが既に色々と書かれているので、そちらを参照して頂くほうが良いと思います(^^;今日、自分が書くのは仮想マシンの構築メモみたいなもので、以下@normalianさんのブログエントリの後追いになります(^^;

仮想マシンの新規で「ギャラリーから」を選択します。

f:id:kikutaro777:20140117225658j:plain

Oracle WebLogic Server 12c Enterprise Edition(Preview)を選択しました。

f:id:kikutaro777:20140117225743j:plain

仮想マシン名、サイズ、ユーザとパスワードを入力します。

f:id:kikutaro777:20140117225841j:plain

DNS名を入力し、今回は東アジアを選択しました。

f:id:kikutaro777:20140117225912j:plain

エンドポイントの設定

まずはデフォルトのままで進めました。

f:id:kikutaro777:20140117232833j:plain

WebLogicの管理コンソールを外側からアクセスしたい場合には7001のポートを開けておくとよいようです(今回は後でやってます)

しばらく待ちます

f:id:kikutaro777:20140117230034j:plain

実行が完了したら下メニューの「接続」を押します。

f:id:kikutaro777:20140117230114j:plain

リモートデスクトップの接続が起動するので「接続」を押します。

f:id:kikutaro777:20140117230154j:plain

「はい」を選択します。

f:id:kikutaro777:20140117230215j:plain

成功すればWindows Server 2012にログインされます!

日本語のインストール

デフォルトは英語のみなので、前に書いた以下エントリの

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

「日本語表示にする」

設定を行います。

メニューを確認

ログイン後、マウスを左下に持って行ってメニューを表示すると

f:id:kikutaro777:20140117230528j:plain

Oracleの所にWebLogic Scripting Toolとかあって、WebLogicが入ってるっぽい!

Configuration Wizard起動

メニューの「Configuration Wizard起動」を選択しました。

f:id:kikutaro777:20140117230638j:plain

構成ウィザード

以下画面となるので、「新規ドメインを作成」を選択しました。

f:id:kikutaro777:20140117230728j:plain

ここからはウィザードの画面だけを貼ります。

f:id:kikutaro777:20140117230804j:plain

色々まだわかってないですが、とりあえずデフォルトで進めました。

f:id:kikutaro777:20140117230832j:plain

名前とパスワードを設定しました。

f:id:kikutaro777:20140117230856j:plain

開発環境を選択します。

f:id:kikutaro777:20140117230919j:plain

WebLogicは開発モードであれば無償…ですよね(^^;?

と不安になったのでググってたらOracle Aceの@yamadamnさんのLT資料が!

WebLogic Serverの開発モードと本番モードの使い分け
http://www.slideshare.net/OracleMiddleJP/weblogic-server-22423176

ってか、WebLogicを少しでも触っていくなら@yamadamnさんの色々な発表資料を拝見せねば(>_<;

JDKはデフォルトでOracle HotSpotが選択されているので、今回はとりあえずそのままのバージョンで進めました。

以下、拡張構成はとりあえず何も選ばずに進めました。
f:id:kikutaro777:20140117231414j:plain

構成のサマリーを確認して「作成」ボタンを押下します。
f:id:kikutaro777:20140117231447j:plain

処理を待ちます。
f:id:kikutaro777:20140117231525j:plain

ドメインの作成が完了しました。「次へ」を押下します。
f:id:kikutaro777:20140117231612j:plain

WebLogicのインストールが完了したようです。
f:id:kikutaro777:20140117231645j:plain

管理サーバの起動にチェックを入れて「終了」を押下しました。
f:id:kikutaro777:20140117231718j:plain

チェック入れ忘れた場合は上記手順であれば「C:\Oracle\Middleware\Oracle_Home\user_projects\domains\base_domain\bin」にある「startWebLogic」を実行することで起動できました。

コンソール、日本語がうまく表示されてないですが(^^;とりあえず貼っておこう。
f:id:kikutaro777:20140117231811j:plain

最初、上記の「管理サーバーのURL」をしっかりみてなくて、IE起動してlocalhostの7001にアクセスしてしまい、以下画面で

f:id:kikutaro777:20140117231903j:plain

あれっ、インストール失敗?あれっ、あれっ。と少し混乱したのですが…(^^;

/console/をURLに入れて無事以下のように管理画面にアクセスできました(^^;ほっ

f:id:kikutaro777:20140117232013j:plain

あまり良くないと思いますが、外部から管理画面にアクセスする場合は、Azureに戻ってエンドポイントで7001を追加して

f:id:kikutaro777:20140117232133j:plain

グローバルIPで7001にアクセスすれば以下のように表示されました。

f:id:kikutaro777:20140117232159j:plain

ログインすると

f:id:kikutaro777:20140117232210j:plain

おお、これがWebLogicの管理画面!!!

せっかくなので、ちょっとしたJava EE6アプリを作って動かしてみたい(>_<)

でもその前に、普通にローカル環境にWebLogic入れてNetBeansなどから接続してみなければ。ということで、いったん停止(^^;

はじめてのWindows Azure ~VM DepotでJenkinsサーバを簡単構築~

Windows Azureを触っていたら、「VM Depot」なる言葉が画面に出てきました。

f:id:kikutaro777:20140115022407j:plain

「これなんだろ?」と調べてみた所、コミュニティベースに集められたWindows Azureの仮想マシンイメージを提供するサービス、とのことでした。

f:id:kikutaro777:20140115015432j:plain

日本語での紹介サイトだと以下辺り

MSさんも今やこんなオープンなサービス提供してるのかぁ、面白いなぁ。

どんな仮想マシンイメージがあるのかな?とAzureのメニューをみると、既にかなりの量があります(^^;
f:id:kikutaro777:20140115020426j:plain

一覧はVM Depotのサイトからも見れるようなので、Azureに登録していない方でも以下でアクセスできます。
http://vmdepot.msopentech.com/List/Index

一部抜粋しただけですが、Alfreco,Solr,GitLab,JBoss,Jenkins,Jetty,Liferay,Redmine,Subversion,SugarCRM,Tomcat,Trac…などなどなど、他にも色々あるし、日々登録されていっているようです。

今回はJenkinsのイメージを使ってみたのですが、あっさり環境構築できてすごい…(^^)!

以下、手順をまとめます。

Jenkinsとは?

Jenkinsに関する情報は豊富なので、ここでは省略して、サイトとWikipediaのリンクだけおいておきます(^^;

以下、自分が前にJenkinsに関して書いたブログエントリですが、Jenkinsのおかげで日々のビルドや成果物生成、各試験環境へのデプロイなどを自動化することができました。ホント素晴らしいツールです。

手順

スクリーンショットを細かく取ってますが、手順としては迷いなく、かなり簡単です(^^;

Azureのメニューから「仮想マシン」->「VM DEPOTの参照」を選択します

f:id:kikutaro777:20140115022631j:plain

イメージを選択します

今回は一覧にあった最新バージョンのJenkinsを選択しました。
(今日2014年1月15日時点でJenkinsサイトにあるLatest and greatestのバージョンと同じでした)

f:id:kikutaro777:20140115022715j:plain

ストレージアカウントを選択します

とりあえず日本に近い東アジアを選択しました。

f:id:kikutaro777:20140115022855j:plain

上図のスクリーンキャプチャにも表示されているように、注意事項として、VM Depotで提供されたイメージはあくまでもコミュニティメンバーによるものであって、Microsoftとして責任を負うものではない、ということが書いてあります。

利用は自己責任となるので、そこは注意が必要です。

イメージ登録します

以下手順でイメージ登録を行うことで、後ほど仮想マシンを作成する際のベースが出来上がります。

私が試した際は10分程度の時間がかかりましたが、まずはイメージのコピー処理が行われます。
f:id:kikutaro777:20140115023147j:plain

コピーが完了すると以下画面となり、状態は「登録を保留しています」と出ています。
f:id:kikutaro777:20140115023250j:plain

下の「登録」ボタンを押すとイメージの名称等を入力するダイアログが表示されます。
f:id:kikutaro777:20140115023330j:plain

登録処理が行われます。
f:id:kikutaro777:20140115023351j:plain

完了して状態が「利用可能」となりました。
f:id:kikutaro777:20140115023447j:plain

仮想マシンを作成します

仮想マシンの作成メニューで「ギャラリーから」を選択します。
f:id:kikutaro777:20140115023530j:plain

イメージの選択画面で、左にある「マイイメージ」をクリックします。
すると、先ほど登録されたイメージが出てくるので選択します。

f:id:kikutaro777:20140115023612j:plain

あとは普段の仮想マシン作成と同じ流れで、マシン名やサイズなど入力していきます。

f:id:kikutaro777:20140115023701j:plain

f:id:kikutaro777:20140115023708j:plain

今回、とりあえずエンドポイントでHTTPを設定しておきました。

f:id:kikutaro777:20140115023749j:plain

仮想マシンの作成処理が行われます。
f:id:kikutaro777:20140115023823j:plain

確認してみる

上記の手順だけで、もうJenkinsが起動してるサーバができてました(^^;ひええ

ブラウザで作成した仮想マシンにアクセスすると以下ページが表示されました。
f:id:kikutaro777:20140115025003j:plain

「Access my application」をクリックすると…Jenkins!あっさりすぎる。
f:id:kikutaro777:20140115025110j:plain

ちなみにデフォルトでユーザ設定されているようで、入れた覚えない…と一瞬困ったのですが、以下の設定となっているようです。
http://bitnami.com/stack/jenkins/cloud/azure

さっそく、user/bitnamiでログインすると

f:id:kikutaro777:20140115025243j:plain

無事ログイン。すごい。。。

実際に運用で利用する場合はセキュリティ等を色々考慮する必要があると思いますが、この環境構築の手軽さはすごいなぁと。

BitNamiとは?

上記でブラウザからアクセスした際のトップページに「BitNami」という言葉が出てます。ログイン情報もそうですね。
私の場合は最初にsshでログインしたのですが、以下画面となって

f:id:kikutaro777:20140115023958j:plain

BitNamiって何…(^^;?と、なりました。

Azureのイメージ選択時に、ちゃんと提供元として名前があります。

f:id:kikutaro777:20140115024637j:plain

上記リンクをクリックすると、VM Depotのサイトで提供元の情報ページへ飛びました。
https://vmdepot.msopentech.com/User/Show?user=4

f:id:kikutaro777:20140115024744j:plain

こうした便利なアプリケーションイメージなどを提供するサービスなのですね。
http://bitnami.com/

f:id:kikutaro777:20140115024907j:plain

うーん、クラウド情弱…。

しかし便利な時代です。

ChefのCookbookでJavaとGlassFishをインストールしてみました

ここ最近、Windows Azureを利用してUbuntu Linuxの仮想マシンを作って、そこからknife-azureで別の仮想マシンを作って…ということをしました。

段々Windows Azure関係なくChef-Soloの話になってるので、いったんタイトル変更(^^;

今日はそこからさらに、knife-soloでサードパーティのCookbookを使ってJavaやGlassFishのインストールをしてみました。

文字で書くとわかりにくいので…絵にすると以下のような感じです。

今までが

f:id:kikutaro777:20140113041733p:plain

で、今日は

f:id:kikutaro777:20140113214650p:plain

です。

「入門Chef Solo」

今までずっとググりながら手探りでやってたのですが、やっぱり「入門Chef Solo - Infrastructure as Code」買いました(^^;

自分が買ったのは以下PDF版です。

入門Chef Solo - Infrastructure as Code
伊藤直也
達人出版会
発行日: 2013-03-22
対応フォーマット: EPUB, PDF

Amazon Kindle版は以下。

やっぱり買って良かった(^^!色々頭の中が整理されました。
もっと細かく読み込んでいかねば。

JavaとGlassFishのCookbook

OpsCodeで公開されていた以下サードパーティのCookbookでインストールを試してみました。

今回はあくまでもお試しレベルなので、最終的には環境に合わせて自分でCookbookやRecipeを準備するほうがいいのかもしれません。

  • Chef Cookbook: java

http://community.opscode.com/cookbooks/java

  • Chef Cookbook: glassfish

http://community.opscode.com/cookbooks/glassfish

実行した手順

わかりにくくなるので、いくつかの手順ごとに図をつけて青い吹き出しで実行した操作を書いておきます。

f:id:kikutaro777:20140113215935p:plain

リポジトリ作成

knife soloコマンドでchef-repoという名前のリポジトリを作成しました。

knife solo init chef-repo

f:id:kikutaro777:20140113220255j:plain

今回は「/home/ユーザ名」で実行してるので「/home/ユーザ名/chef-repo」ができました。

JavaのCookbook取得と配置

Cookbookはコマンドで取得してみました。まずはJavaから。

knife cookbook site download "java"

f:id:kikutaro777:20140113220853j:plain

解凍します。

tar zxvf java-1.17.6.tar.gz

解凍されたフォルダ「java」はmvコマンドでchef-repoのcookbooksに移動させました。

knife-soloでchef-soloインストール

次にJavaを入れたいリモートマシンにコマンドでchef-soloを入れます。
リモートのほうは、knife-azureで構築してから何も触っていない状態で、Rubyもインストールされていませんが、以下コマンドで普通にchef-soloがインストールされました。Rubyは組込みでインストールされたっぽいです。

f:id:kikutaro777:20140113222427p:plain

knife solo preapre ユーザ名@Javaを入れたいリモートのIP

f:id:kikutaro777:20140113222644j:plain

しばらく待って

f:id:kikutaro777:20140113222928j:plain

インストールされたっぽい!そして「Javaを入れたいリモートのIP.json」のファイルがnodesフォルダ配下にできました。
(これもカレントによってできる場所変わるので、最終的にはchef-repoのnodes配下に置きました)

一応リモートのほうにログインしてfindでchef探したらありました。

せっかくリモートにログインしたので、試しに「java」と打つと以下のような結果でした。

f:id:kikutaro777:20140113223242j:plain

仮想マシン作ってから何もしてないのでJavaも入ってません。

で、一旦Javaを入れるリモートは置いといて、手元の作業マシンに戻ります。

続けて以下作業をしました。

f:id:kikutaro777:20140113224726p:plain

jsonファイルを編集

さきほど生成された「Javaを入れたいリモートのIP.json」をviで以下編集しました。

{
  "java": {
    "install_flavor": "oracle",
    "jdk_version": 7,
    "oracle": {
      "accept_oracle_download_terms": true
    }
  },
  "run_list": [
    "recipe[java]"
  ]
}

最初はrun_listの部分だけ書いていたのですが、デフォルトだとOpenJDKの6がインストールされてしまいました(^^;

今回自分が入れたかったのはOracleのJDK7なので、上記のようにattributeの設定が必要なようです。

この辺の書き方が最初よくわからず、購入した「入門Chef Solo - Infrastructure as Code
」を読みつつ、OpscodeのCookbookページを見ながらやりました。

Chef Cookbook: java
http://community.opscode.com/cookbooks/java

慣れて使いこなせれば色々なインストールができそうなので強力そうだなぁ。

knife solo cookでJavaインストール

設定ができたので

knife solo cook ユーザ名@Javaを入れたいリモートのIP

を実行しました。何回もパスワード聞かれてあれですが(ここは何か設定がありそうだな…)

f:id:kikutaro777:20140113225537j:plain

失敗…。落としたJavaのCookbookにあるmetadata.rbの中身をみると

depends "windows"
depends "aws"

とあったので、これが足りてない様子。このCookbookの依存は自動で取得したりはしない…のかな?(^^;この辺がまだよくわかってないです。

自分で取得してCookbookに配置すればいけそうですが、今回手抜きでこの2行を削除して再度実行しました。

するとズラズラとメッセージが出て

f:id:kikutaro777:20140113230118j:plain

f:id:kikutaro777:20140113230124j:plain

いけたっぽい(^^;

確認のため、再度リモートのマシンにログインしてjavaコマンドを幾つか試してみると

f:id:kikutaro777:20140113230502j:plain

f:id:kikutaro777:20140113230508j:plain

できてる!すげー!

ということで、ちょっと手抜きしてますが、以下の所まで出来ました。

f:id:kikutaro777:20140113230834p:plain

残るはGlassFishですが、手順的にはこれもJavaと同じで、今回は以下手順でやりました。

GlassFishのCookbook取得

knife cookbook site download "glassfish"

解凍してchef-repoのCookbook配下に配置。

今回Javaを入れたマシンと同じマシンにGlassFishを入れるので、先ほどと同じjsonファイルにrecipeのglassfishを追加しました。

{
  "java": {
    "install_flavor": "oracle",
    "jdk_version": 7,
    "oracle": {
      "accept_oracle_download_terms": true
    }
  },
  "run_list": [
    "recipe[java]",
    "recipe[glassfish]"
  ]
}

で、knife solo cookを実行します。

knife solo cook ユーザ名@Javaを入れた(かつ今からGlassFishを入れる)リモートのIP

メッセージが色々と出てきて

f:id:kikutaro777:20140113231317j:plain

f:id:kikutaro777:20140113231325j:plain

なんかいけたっぽい(^^;

ログインして確認した所

f:id:kikutaro777:20140113231430j:plain

おお、GlassFishが入ってる!

ちなみに上記手順のデフォルトだとdomainまでは生成されず、インストールだけです。

f:id:kikutaro777:20140113232957p:plain

今回はこの後、いったん手でdomain作って実行してみた所、以下のように管理コンソールが確認できました!
(とりあえずテキストブラウザ確認っていう変な感じですが…まあおいておいて)

f:id:kikutaro777:20140113231539j:plain

domainを作成するrecipeもあるので、この辺を使っていけば自動化もできそうですね。
その辺も時間をみて触っていきたいと思います。

今回Linuxでやりましたが、仕事ではWindows Serverが多いので、Windowsベースにchef-solo使えるようにしないと(^^;

作業マシンがLinuxでノードがWindows Serverとかもできる…のかな?色々調べて行かないと。。。

にほんブログ村 IT技術ブログへ
にほんブログ村 にほんブログ村 IT技術ブログ Javaへ
にほんブログ村