Mrubyの夕べ

16
1 2013/01/18 株式会社インターネットイニシアティブ プラットフォームサービス本部 阿部 博 Ruby PaaSであるMOGOKについて

description

1/28にIIJで行われた「mrubyの夕べ」の資料になります。

Transcript of Mrubyの夕べ

Page 1: Mrubyの夕べ

1

2013/01/18 株式会社インターネットイニシアティブ プラットフォームサービス本部 阿部 博

Ruby PaaSであるMOGOKについて

Page 2: Mrubyの夕べ

2

MOGOKのついてのご紹介

Page 3: Mrubyの夕べ

3

自己紹介

•  プラットフォーム開発部プラットフォーム開発課所属 •  氏名:阿部 博

•  業務内容 –  IIJ GIOの開発 –  MOGOKの開発/運用/サポート/広報 –  CloudOSのリサーチ –  SDNのリサーチ –  技術研究所とのコンテナ型データセンターの研究開発

Page 4: Mrubyの夕べ

4

MOGOKについて…その前に

•  mrubyの会なのに呼んでもらってごめんなさい –  (ありがとうございます)

•  これからお話することはIIJで作っているRuby PaaSであるMOGOKのご紹介です –  mruby関係ないじゃん!! –  ごめんなさいごめんなさい…

Page 5: Mrubyの夕べ

5

MOGOKのサイト

•  http://mogok.jp/ –  「いますぐサインアップ」から登録できます

Page 6: Mrubyの夕べ

6

MOGOK = PaaS

•  そもそもPaaSってなんだ? –  PaaS = Platform as a Service

•  世の中のメジャーなPaaS –  Google App Engine –  Heroku –  EngineYard –  SalesForce –  Sqale(国産) –  C4SA(国産) –  CloudFoundry –  MOGOK(国産) <- new

Page 7: Mrubyの夕べ

7

PaaSでできること/やりたいこと

•  アプリケーション開発に専念したい –  サーバセットアップとかやだー –  サーバ運用とかやだー

•  開発したアプリを簡単にデプロイして公開した –  サーバへのアプリ展開とかめんどくさいからやだー –  関連ライブラリのインストールとかめんどくさいからやだー

•  IaaSとPaaSの違い –  IaaS = きめ細かくサーバの設定ができ、納得いくまでチューニングと運用

ができる –  PaaS = インフラ部分の面倒な作業を省いて開発と公開に専念できる

•  PaaSの利点 –  開発と公開に専念できる!! –  サーバ運用管理から解放される!!

•  PaaSの欠点 –  細かい仕様がプラットフォーム依存になる

Page 8: Mrubyの夕べ

8

MOGOK = PaaS

•  アプリケーションの開発と公開手順

1.  自分の手元マシンでRailsアプリケーションの開発を行う –  (Windows, Mac, Linux等で)

2.  mogokコマンドを使って、アプリケーションをmogokのgitリポジトリへとpush

3.  mogok buildコマンドを使って、アプリケーションに必要なライブラリのインストール

4.  mogok startコマンドを使って、アプリケーションの公開

•  詳しくは「もごろぐ」というブログにtipsがいくつかまとめてあります

–  http://blog.ruby.iijgio.com/

_人人人人人人_ > 簡単!! <  ̄Y^Y^Y^Y^Y ̄

Page 9: Mrubyの夕べ

9

使っているテクノロジー

•  Ruby on Rails •  MySQL •  LXC(Linux Container) •  Nginx •  Fluentd •  Bundler •  IIJ GIO (http://www.iij.ad.jp/GIO/) •  …

•  あげて行くとキリが無いので別の機会をもうける予定です –  OSC 2013 Tokyo/Spring(2013/02/22)

•  アプリ開発を楽にする、Ruby PaaS 「MOGOK」のご紹介

–  kanazawa.rb meetup #6(2013/02/16) •  「Inside Of MOGOK」

Page 10: Mrubyの夕べ

10

システム構成図

aa bb cc dd ee

ユーザ アプリ

LXC(Linux Container)

MySQL インスタンス

MySQL インスタンス

ユーザ アプリ

ユーザ アプリ

ユーザ アプリ

ユーザ アプリ

リクエストルータ群

データベース アクセス

リクエスト ルーティング

Linux Server

ユーザ ポータル

Git リポジトリ

アプリケーション デプロイ

デプロイ システム群

アプリケーション管理WebUI

mogok/gitコマンド

HTTP/HTTPS アクセス

HTTP/HTTPS アクセス

開発者 一般ユーザ

Page 11: Mrubyの夕べ

11

MOGOKを無理矢理mrubyと絡めてみる

•  アプリケーションへのルーティングはNginx + リクエストルータが処理 –  URLベースのアプリケーション名でルーティング –  http://hirolovesbeer.ruby.iijgio.com/ の場合「hirolovesbeer」の部分がア

プリケーション名になる •  Nginxは後段にいるリクエストルータ群への首振りがお仕事

–  実際のルーティングはリクエストルータが行っている •  Nginxにルーティング機能を持たせる?

–  2つのサーバの機能を1つにまとめられる? •  Nginx + mrubyとかでできそうじゃない?

–  作っている人がいる!! –  http://blog.matsumoto-r.jp/?p=2820

•  現在実装を検討中です… aa bb cc

LXC(Linux Container)

ユーザ アプリ

ユーザ アプリ

ユーザ アプリ

リクエストルータ群

リクエスト ルーティング

Linux Server

Nginx + mruby?

Page 12: Mrubyの夕べ

12

有料なの?

•  現状MOGOKはオープンβ版で無料です –  正式版が公開されても基本的に継続して無料で提供します

•  正式版がでたら機能制限とかって出るの? –  インスタンス数/機能によっては制限が出る予定です –  無料版はβ版と同等のスペックになる予定です –  ただし利用できるインスタンス数は減るかも –  無料版には広告を差し込むかもしれません

•  有料版の機能拡張って何が予定されているの? –  複数インスタンス対応 –  広告外し機能 –  データベースの占有 –  独自ドメイン対応 などを予定しています

Page 13: Mrubyの夕べ

13

誰が使えばいいの?

•  基本的に誰でもWelcome –  スパム発信とか攻撃踏み台とかは辞めてね

•  悪意があるアプリは即時停止します

•  Ruby on Railsを勉強したい方 –  ログイン後に簡単なチュートリアルを載せてあります –  MOGOKを使ったアプリ開発的な勉強会も予定しています

•  学校の教材環境として利用したい教育機関の方 –  連絡ください

•  Webアプリを動かしたいけどサーバの管理とか難しい…と思う方 –  Ruby実行環境、MySQL等のセキュリティ対策はIIJ側で行っています

•  1アプリケーションを動かすためにサーバを借りたくない方 –  従量課金が怖い方等も…

•  アプリのレスポンスが早い所(ロケーション)を求める方 –  弊社国内のISPですし…バクッボーンとかそれなりに早いですし…

Page 14: Mrubyの夕べ

14

MOGOKのサイト

•  http://mogok.jp/ –  「いますぐサインアップ」からどうぞ

•  MOGOKのコンセプト

MOGOKは「コンピュータに使われる人」ではなく 「コンピュータを使う人」でありたいと願う すべてのRubyプログラマを応援します

Page 15: Mrubyの夕べ

15

ご清聴ありがとうございました

お問い合わせ先 IIJインフォメーションセンター TEL:03-5205-4466 (9:30~17:30 土/日/祝日除く) [email protected] http://www.iij.ad.jp/

Page 16: Mrubyの夕べ

16

インターネットの先にいます。

IIJはこれまで、日本のインターネットはどうあるべきかを考え、

つねに先駆者として、インターネットの可能性を切り拓いてきました。

インターネットの未来を想い、イノベーションに挑戦し続けることで、世界を塗り変えていく。

それは、これからも変わることのない姿勢です。

IIJの真ん中のIはイニシアティブ           IIJはいつもはじまりであり、未来です。

お問い合わせ先 IIJインフォメーションセンター TEL:03-5205-4466 (9:30~17:30 土/日/祝日除く)

[email protected] http://www.iij.ad.jp/

お問い合わせ先 IIJインフォメーションセンター TEL:03-5205-4466 (9:30~17:30 土/日/祝日除く)

[email protected] http://www.iij.ad.jp/

インターネットの先にいます。

IIJはこれまで、日本のインターネットはどうあるべきかを考え、

つねに先駆者として、インターネットの可能性を切り拓いてきました。

インターネットの未来を想い、イノベーションに挑戦し続けることで、世界を塗り変えていく。

それは、これからも変わることのない姿勢です。

IIJの真ん中のIはイニシアティブ           IIJはいつもはじまりであり、未来です。