JAWSDAYS 2015 お疲れ様でした

久しぶりにブログを更新します。

言い訳をしておくと書いてはいたのですが途中で検証したり合ってるか確認したりする作業で疲れて書きかけのまま放置してる記事がけっこうあります...

 

3月22日に開催されたJAWSDAYSにスタッフとして初参加してきました。

f:id:uranari5296:20150322084953j:plain

初めは一般の参加者として登録していたのですがHackDayのセッションがすぐいっぱいになってしまいキャンセル待ち状態になったことを呟いたら、スタッフとして参加してはどうかとお声をかけていただき、JAWS-UG沖縄の西島さん(@k_nishijima)の協力もあり、既に募集が終了していたスタッフメンバーにねじ込んでいただいた経緯があったりします。

 

HackDayではインテルの小型モジュールEdison(RPiよりも小さい)を用いてセンサーから収集したデータをAWS上にpushしてそれらのデータを加工するなりなんなりしてみようといったことを行いました。

HackDayのスタッフは事前に研修を行っており、また個人で購入したEdisonを使用して手順を確認したり、ハマったポイントを共有したりしながら本番に備えており、僕もそれなりに準備していたつもりです。

 

本番ではEdisonを50台用意しました。

といっても僕が行った時には諸々の設定は済んでてEsion for ArduinoにGrove Starter Kitをセットするくらいしかやることがありませんでした。先にセットアップを済ませてくださった方々有り難うございます。

実はここで最初のトラブルがあったのですが、Edison for Arduinoは50台用意できていたのですがGrove Stater Kitがこの時点で10台しか用意できておらず、残り40台が本番30分前に届いて20分で組み立てたという裏話があったとか。。。

f:id:uranari5296:20150322104730j:plain

f:id:uranari5296:20150322104946j:plain(組み立てたEdison50台)

本番が始まってからも、Wi-Fiが切れる、当日になってEdisonのデーモンのアップデートが来る(アップデートしないと動かない)、解凍したサンプルコードが壊れてる等々のアクシデントに見舞われてクソ忙しかったです。

Wi-Fiは主に個人のAPが乱立したせいぽそうなので、IT系に限らずこの規模のイベントではどこでも発生しそうな事案なのでどこかで上手くいった事例が出てきて知見が共有されればと思います。

ちなみに僕がHackDayのスタッフをしていたのは、Iotデバイスとクラウドを使ってセンサーハック〜データ可視化〜 まででその後はJAWS-UGのブースでステッカー配ったりしてました。

とても忙しかったですが、その分濃いJAWSDAYSになったと思います。

 

JAWSDAYS終了後はグループ2のPubCrawlに参加してLTしてました。

実は当日の朝になって西島さんからPubCrawlでLTをするように命じられ急いで作ったやっつけなLTをしちゃいました(テヘッ

f:id:uranari5296:20150322191148j:plain

(グループ2のPubCrawl、総勢で60名くらい?僕がLTするには人数が多すぎませんかね(・_・;))

西島さんのLT指名は一度発動すると逃れられない事はJAWS-UG沖縄では常識...

内容は、まぁ皆さん沖縄に遊びに来てくださいといった感じの内容をやりましたね。

総勢で10名近くの方がLTしたと思うのですが投票で4位タイに選んでいただき景品としてトレンドマイクロさんからウィルスバスター1年分を頂きました!ありがとうございます!!

 

とまぁこんな感じで初めてのJAWSDAYSを過ごしたのですが、感想としては先程も書いた通り忙しかったですが、その分濃いJAWSDAYSを体験できたのかなと思ってます。

就職で東京に引っ越してきたので、今後は東京支部の活動にも少しずつ参加していきたいなと思っています。

JAWSDAYSに参加された皆さん、お疲れ様でした&ありがとうございました。

 

Amazon CloudWatch Logs

参考記事

・Amazon CloudWatch Logsでログファイルを監視する(クラスメソッド)

エージェントのインストール 

# wget https://s3.amazonaws.com/aws-cloudwatch/downloads/awslogs-agent-setup-v1.0.py

# sudo python ./awslogs-agent-setup-v1.0.py --region us-east-1

そうすると次のようなメッセージが出てきます

# Step 1 of 5: Installing pip ...DONE

# Step 2 of 5: Downloading the latest CloudWatch Logs agent bits ... DONE

# Step 3 of 5: Configuring AWS CLI ...
# AWS Access Key ID [None]: IAM USER Access Key
# AWS Secret Access Key [None]: IAM USER Secret Access Key
# Default region name [None]: us-east-1
# Default output format [None]:

# Step 4 of 5: Configuring the CloudWatch Logs Agent ...
# Path of log file to upload [/var/log/messages]:取得するログファイルのパスを指定する
# Destination Log Group name [/var/log/*.log]:取得するログを複数のグループで分けたいときのグループ名を指定する
# Choose Log Stream name:
# 1. Use EC2 instance id.
# 2. Use hostname.
# 3. Custom.
# Enter choice [1]:Log Streamsに表示させる形式を指定する
# Enter Log Stream name [None]: 上で選んだ形式の値を指定する

# Choose Log Event timestamp format:
# 1. %b %d %H:%M:%S    (Dec 31 23:59:59)
# 2. %d/%b/%Y:%H:%M:%S (10/Oct/2000:13:55:36)
# 3. %Y-%m-%d %H:%M:%S (2008-09-08 11:52:54)
# 4. Custom
# Enter choice [1]:取得したログを表示させるときのタイムスタンプの形式を選ぶ

# Choose initial position of upload:
# 1. From start of file.
# 2. From end of file.
# Enter choice [1]: 2
# More log files to configure? [Y]:他にも取得したいログがあるならY 無いならN

# Step 5 of 5: Setting up agent as a daemon ...DONE

ログの参照

管理画面に入ってリージョンをN-VirginiaにしたらServicesからCloudWatchを選び

左側のDashBoardからLogsを選べばログファイルの一覧が表示されます。

 

これをAWSの中の人が見たなら一つだけ要望が

EC2だけじゃなくてAWSの外からもログを取得できるようにして欲しい。

後止め方がわかんね。

AWSコンソールからWatchLogsのディレクトリを消せば宜しいっぽい

YosemiteにしたらIntellijが起動しなくなったのでその対応策

2014/10/17のOSupdateでIntellijが起動しなくなったのでその対応策

詳細はサムライズムのブログに書かれていますが

Java for OS X 2014-001

をインストールすると無事に動いてくれます。

ConoHaでVNCサーバーを立ててiPhoneから艦これを遊ぶ

MBP逝く

メインマシンのMacBookPro(というかこれしかマシン無い)の調子が悪く入院してしまったのでその間艦これを遊ぶためにConoHaでVNCサーバーを立ててiPhoneから艦これを遊べる環境を作りました

ConoHaを選んだ理由

1.国内のIPアドレスがある

基本的に普段はAWSのEC2を使っているのですがそれに割り振られるIPは米国のIPなんですね。

艦これは国内のIPからしか遊べないので国内ベンダーのVPSなら国内のIPが振られるだろうという予想で国内のサービスを選びました。

EC2からでもVPN使えばいけますがEC2で選べるOSでVPNクライアントを設定する記事が少なかったのと(やってみたができなかった)めんどくさかったのと無料枠のmicroインスタンスだと正直Xwindow立ち上げるにはスペック不足かなーと。middle使うくらいならConoHaのほうが安いですし。

2.webコンソールが使える

手元にマシンが無いので使用するのは家族共用のWindowsマシンなのですがこれからsshするには鍵の管理とか心配だったのでwebコンソールが使えると便利だなーと思ったり。

3.清楚可愛い女の子キャラがいる

ConoHaには応援キャラクターの「美雲このは」がおり、Twitterでよく自分のことを「清楚可愛い」と言っています。設定年齢が13歳なので守備範囲対象外なのですが、やっぱ女の子キャラは欲しいですよね。

f:id:uranari5296:20140804021712j:plain

 

ちなみにMicrosoftのWindowsAzureにも”日本市場向け”(これマメな)にクラウディア窓辺という女性キャラがいます。こっちはいい感じにストライクです。

f:id:uranari5296:20140804022037j:plain

 

ところでAWSは女の子を登場させる予定は無いんですかね?EC2とかRDSとかサービス毎に女の子いると嬉しいんですが|ω・`)チラ

4.ABC2014のGMOブースにいたこのはのコンパニオンの女性が可愛かった

いやホント何故ツーショットをお願いしなかったと後悔したくらい結構直球ストライクだったんですが、その時ConoHaの薄い本をいただいたので何か機会があれば使おうかなと思ってたところに今回のMBP入院だったのでこれが機会かなと思い使ってみることに。

 

ConoHaでVNCサーバーを立ててみる

世の中同じことを考える先人がいるわけですよ。

ConoHaの技術ブログの2番目の記事にConoHaを使って「艦これ」をスマホで楽しむ方法という記事があったのでそのまんま同じ通りにやるだけです。

ますはConoHaにログインした後、コントロールパネル→サービス→VPSVPS追加

と選択します。

f:id:uranari5296:20140805011826p:plain

VPS追加を選択すると下の画像のようになるのでそのままデフォルトのままrootパスワードだけ設定して確認ボタンをクリックします。

f:id:uranari5296:20140805012608p:plain

するとサーバーが設定され起動します。

f:id:uranari5296:20140805012916p:plain

ラベルのVPS〜をクリックするとコンソール画面が立ち上がります。

f:id:uranari5296:20140805013008p:plain

そうするとコンソールが起動するのでrootと打った後に先ほど設定したパスワードを入力するとログインできます。

f:id:uranari5296:20140805013826p:plain

とりあえずupdateをします。

# yum -y update

次にGUI環境をインストールします。

最後の"Japanese Support"はデスクトップ周りの表示が日本語になるだけなので英語のままで構わないかたは省いてもらっても構いません。

# yum -y groupinstall "Desktop" "General Purpose Desktop" "Japanese Support"

次はブラウザをインストールします。

技術ブログだとchromiumをインストールしていますが、僕の場合うまく動かなかったのでFirefoxを使用しました。

# yum -y install firefox

艦これ専用のグループとアカウントを作成します。

groupaddでグループを追加しuseraddでkankolleグループにteitokuというユーザーを追加します。

# groupadd kankolle
# useradd -g kankolle teitokue

次にVNCサーバーをインストールします。

# yum -y install tigervnc tigervnc-server

VNCサーバーの設定を行います。

# vi /etc/sysconfig/vncservers

で設定ファイルを開き

f:id:uranari5296:20140805021638p:plain

を以下のように変更してください。

f:id:uranari5296:20140805021700p:plain

最後の2行のうち上の行を2にしたら下の行も2と同じ値にしてください。

設定できる値は0~9までですが、できるだけ0と1は使わないでください。

次にteitokuユーザーのパスワードを設定します。

# su teitoku
$ vncpasswd (VNCでteitokuにログインするときのパスワードを2回入力してください)
$ exit

VNCを立ち上げます。

# chkconfig vncserver on
# service vncserver start

ConoHaは初期状態だと外部からの接続が制限されてるのでVNCで接続できるように設定を変更します。

5902の部分はVNCサーバーの設定を行ったとき0を設定したら5900、9を設定したら5909と変更してください。

僕の場合は2に設定したので5902となります。

# iptables -I INPUT 5 -m state --state NEW -m tcp -p tcp --dport 5902 -j ACCEPT
# service iptables save
# service iptables restart

 

また日本語の環境にしたいかたは

# vi /etc/sysconfig/i18n

で以下を

f:id:uranari5296:20140805023749p:plain

以下のように変更してください。

f:id:uranari5296:20140805023903p:plain

そしたら変更を反映させます。

# . /etc/sysconfig/i18n

最後に再起動させたらGUIで立ち上がるように設定します。

# vi /etc/inittab

で以下を

f:id:uranari5296:20140805024342p:plain

以下のように変更します。

f:id:uranari5296:20140805024352p:plain

再起動させます。

# reboot

再起動すると以下のようになりますがまだteitokuではログインしません。

その他を選びrootでログインしてください。

f:id:uranari5296:20140805030836p:plain

ログインしたらfirefoxを立ち上げて艦これにログインしてください。

するとflashplayerをインストールしてくださいと出るのでリンク先のページから.rpmのファイルをダウンロードしてインストールしてください。

f:id:uranari5296:20140805033928p:plain

インストールが終わったらアプリケーション→システムツール→端末を起動してください。

f:id:uranari5296:20140805030931p:plain

flashをインストールします。

端末上で

# yum install flash-plugin

と入力してください。

それが終わったらもう一度再起動させてください。

そしたらiPhoneからVNC接続をします。

僕の場合は「VNC Viewer」というアプリを使用しました。

右上の+をタップします。

f:id:uranari5296:20140805034524j:plain

Adressにはログイン画面に表示された数字とVNCの設定で入力した値を入力してください。名前は適当でおkです。

僕の場合だとログイン画面で「v157-7-202-47」と表示されており、VNCの設定の際に2を設定したので以下のようになります。

f:id:uranari5296:20140805034743j:plain

 

するとVNC接続が確立されますのでfirefoxを立ち上げて艦これのサイトへ行き艦これをプレイしてください。お疲れ様でした。

追記

今回構築した環境は本記事の公開前に削除済みです。

それでは皆さん良い提督ライフを。

HACKERS CHAMPLOO2014に参加してきたので備忘録

7月11日・12日に開催されたハッカーズチャンプルーに参加してきたのでメモメモ

 (詳細はこのブログを見るよりもUstにアーカイブがあるよ!!)

 

7月11日 前夜祭!!

前夜祭はゲストを前にして沖縄のメンバーがLTをしました。

ちなみに、自分もLTしましたよ。

以下参加者のLT資料

 

7月12日 カンファレンス当日

以下当日のゲストの発表資料(資料が見つからない物を見つけ次第反映させます)

 

色んな分野のかたが集まって濃い内容の話が盛りだくさんだったので、ちょっとustを見直して思い出さないと何となく凄かったなーで終わりそうなのが怖いです。

ビーチパーティーやら二次会やらでもっと突っ込んだ内容とかが聞けたのもとても身になりました。

来年からは上京しますが、できればこの日だけは沖縄に戻ってきて混ざりたいですw

 

Cloud on the BEACH 2014 in 沖縄 ~ブログを書くまでが(ry~

 

今年もCloud on the BEACH in 沖縄の季節がやってまいりました(とか言いつつ初参加)

JAWS-UG沖縄主催のAWS勉強会ですが、毎年豪華なゲストを招いての開催です!!

今年はアマゾンデータサービスジャパンの小島様・堀内様、株式会社サーバーワークスの桶谷様、cloudpackの比企様を招いての開催でした。

前夜祭があったそうなのですがそっちには参加できなかったのが悔やまれます。

で、当日のトラックですが

の3本あり、勉強会の部(初心者・未経験者トラック)勉強会の部(経験者トラック)が並行して行われたので私は勉強会の部(経験者トラック)のほうへ参加してきました。

勉強会の部(経験者トラック)のセッションがユージー&ヨーギーの AWS Summit 2014 San Francisco道中記 下門祐二・与儀 実彦 [株式会社レキサス]大阪のイノベーションやコミュニティーファーストの今とこれから 比企 宏之 様 [イノベーションエッグ代表]、午後からCDP道場 乱取り稽古!が行われました。

 

セッション1ユージー&ヨーギーの AWS Summit 2014 San Francisco道中記 下門祐二・与儀 実彦 [株式会社レキサス]

株式会社レキサスのお二人がAWS Summit 2014 San Franciscoに参加してきたお話。

Summitの目玉はやはり値下げだったようでどこまで安くする気なのか、「やめてあげて!!国内のクラウドベンダーが息をしていません!!」と叫びだす人が大量発生したのではないかと思われ。

あと、サンフランシスコにあるAWSのプラチナパートナー(名前忘れた)の文化のお話とか。提案をするときはパワポKeynoteを使用せずにA4一枚に文章として起こして上司に持っていくんだとか、理由がパワポKeynoteにすると絵で誤魔化せるからだそうで。

あとはほとんどご飯のお話でした。

 

セッション2大阪のイノベーションやコミュニティーファーストの今とこれから 比企 宏之 様

比企さんの今までの経歴とかInnovationEggやJAWS-UGなどコミュニティへの思いとか。

話の内容のほとんどが××××が****してだとか放送規制がかかったのであまり書けません、はい。

ただ言えるのがInnovationEggとかJAWS-UGとかのコミュニティに技術系の人だけでなく、人事や営業の人も入ってくることで新しいビジネスが生まれるし、人の流れも流動的になるということ。

 

セッション3大阪のCDP道場 乱取り稽古!

与えられたお題(システム提案)をいかにAWSのCDPを使ってアーキテクトの設計をするか。

2チームに別れてやったんですけどAWS俄なのでやったのはチームの人にほとんど設計して貰って漏れが無いか確認したり分からないところは聞いてみたりしたぐらい。

アーキテクトの設計のお勉強になりました。

 

勉強会が終わったら宜野湾トロピカルビーチにてBBQを行い、沈みゆく夕日を眺めながらのBBQは素晴らしいものでした。

そして、まさかのBBQ後のボウリングw

まぁ、ボウリングについてはノーコメントでw

 

感想

感想というか気付きというか。

提案をA4一枚の文章だけでするというのは自分でもイメージのままで言葉に出来ないものを持ってくるなということなのかーと思ってみたり。来年から社会人なので提案するときの参考にしてみたり。

比企さんのお話にあったようにこういったコミュニティとか勉強会にはやっぱり新しい人とか来て欲しいですね。沖縄狭いので毎回メンバー固定になっちゃうとLTがマンネリ化したり(←LTした事無いやつ)身内ネタになっちゃうので、それはイケてないなと。

最後に一番思うのが主催してくださったかたの企画力というか運営能力というか、これだけのものを毎年無事に成功できるって凄いです。

特に今回の勉強会の部(初心者・未経験者トラック)は技術系だけでなくてビジネス系の参加者がとても多く、沖縄の勉強会でビジネス系のかたが参加されるのは私が参加してる中では初なんじゃないかなと思います。

 

次は7月に予定しているというハッカーズチャンプルーにも参加できたら行きたいですね。

「沖縄Ruby会議01」に参加してきたよ?

3月1日に開催された「沖縄Ruby会議01」に参加してきました。

私自身はRubyはHelloWorldを書いたことがあるだけでRubyistってわけでもないため当初は参加する予定はありませんでした。

なぜ参加したのかというと前日に友人に言われたこの一言

「明日発表するけど見に来る?」

二つ返事で「行くわ」と答えてその場でDoorkeeperから参加申し込みをして参加。

ところが、MAX100人の参加者枠が埋まっててまさかのキャンセル待ち(・・;?)かと思われたのですがサテライト会場も用意していただけるとのことで当日そのまま会場入り。

プログラムが全部で20個以上あってすべて書くのが難しい(内容をきちんと理解できているのが少ないw)のでまつもとさんのお話をメインにいくつかご紹介します。

・「Change your world」

最初に登壇したのがRubyの父まつもとゆきひろさん。

内容はまつもとさんがなぜRubyを作ったのかというのとプログラミング言語を作るというのはどういうことなのかというお話でした。

まつもとさんが初めてプログラミングをしたときは言語がBASICが主流でC言語などはコンパイラが数十万円する時代だった。また、まつもとさんにとってプログラミング言語とは他者が作ってプログラマに与えているもので他者が作ったルールに従って書かないといけないもの。そういうのが嫌だったということと、ドキュメントやマニュアルがほとんど英語で書かれており読むのに苦労したことから自分でルールを作りドキュメントやマニュアルが日本語で書かれた言語を作ろうと思ったがきっかけ。

世の中には同じITに携わる人でも好きな言語を使ってモノを作るのに情熱を注ぐ人、フレームワークを作るのに情熱を注ぐ人、OSを作るのに情熱を注ぐ人など様々な人がいます。まつもとさんは情熱を注ぐことができるフィールドを「魂の浮力を感じるところ」と言ってました。

自分の魂の浮力を感じるところが情熱を注ぐことができる場所であり、そこで活動することで普段見て、聞いて、感じている世界を自分だけの素晴らしい世界に自分自身でデザインすることができる。

「沖縄Ruby会議01」が終わった後の懇親会で言われたことなのですが

「今いる環境が自分自身のやりたいことと方向性が違うなら今すぐ立ち去るべき」

これはまつもとさんが言う「魂の浮力を感じる場所で活動すること」と共通するなと思います。

自分の世界を自分自身でデザインすることにより、普段感じている不平等や不自由を取り払うことができる。まつもとさんにとってそれは自分でプログラミング言語を作るということだった。

皆さんは日常の中の仕事や活動を通して自分の世界をデザインすることができていますか?

その他印象に残ったものをいくつか。

・「Emacsの普通の使い方」

私自身がEmacsを使ったことがないのでLTの内容がどういうことをしているのか理解できなかったのですが、Emacsを使ってchromeを起動してURLを指定してログインして、ログアウトもしてと全てをEmacsを使ってやってみるといった感じの内容でした。最後の「自分で自分のEmacsをカスタマイズして自分だけのEmacsを作る。それがEmacsの普通の使い方」には会場中から「いや、それ絶対普通じゃないから!!」という無言の突っ込みを感じることができましたw

「図書館にRuby本を!」

LTの発表者が学生時代にRubyの勉強がしたくて大学の図書推薦システムを利用して大量のRuby本を注文したお話。図書推薦システムを利用する際に著者名やISBNコード、発売年月を入力するのが面倒でAmazonの欲しい本のページからワンボタンで図書館に推薦できるシステムを作ったとのこと。

ただデバッグも兼ねてシステムを使ってたら年間100冊以上推薦してたとかw

twitterで他の方が推薦しすぎて図書館のブラックリストに入れられ呼び出されたことがあるとカミングアウトしてたのが個人的にはツボでしたw

・「MacFriends:Macの背面にステッカー貼ってるヤツちょっとこい」

Macbookユーザーの方、ディスプレイの背面にステッカー貼ってますか?私は貼っていません。( ̄^ ̄) 

これは背面にステッカーを貼っているユーザーが写真を撮って共有するというサービス。コメントとかも付けれるのかな?この前電器店でディズニーのアラジンに出てくるキャラクターが背面のリンゴマークを持っているように見えるステッカーを貼っているMacbookを見たときに「いいね!」と思ったので他にもどんなユニークなステッカーやデザインが出てくるのか楽しみです。

 

懇親会・小ネタ・感想

今回は「沖縄Ruby会議01」だったのですが東京や栃木、北海道からの参加者もたくさんいました。懇親会では参加者のRubyに対する思いとか普段Rubyをどう使っているのかなど色々なお話が聞けて気がつけばRubyの世界に引きずりこまれてるw

途中からは島唄を歌い出したりカチャーシーを踊ったりといい感じの懇親会になってました。

また会場の大学の無線lanを開放してもらってたのですがプログラムの途中で大学全体のシステムがダウンするという事態の中、「ひょっとして自分たちが一斉にアクセスしたから!?やってやったぜ!!」という空気になったりと(実際は大学で行われている工事が原因だったとのこと)全体的に通常のLTや勉強会よりも「どれだけ面白いRuby会議になるのか!?」という雰囲気になってて笑い声が絶えず響いていた素敵な「沖縄Ruby会議01」でした。

Rubyか、、、ちょっと手を出してみようかな?