狠狠撸

狠狠撸Share a Scribd company logo
kintoneエコシステム真時代の幕開け!
-kintoneエコシステムとAWSサーバレスアーキテクチャ-
kintone Café 札幌 Vol.7
#kintonecafe
Twitter: @yamaryu0508
FB: https://www.facebook.com/ryu.yamashita.3
2015年11月30日
株式会社ジョイゾー/kintoneエバンジェリスト/
kintone Café 運営事務局?東京支部?山下 竜
自己紹介「山下?竜」
2
2013.3
IOTとグループウェア(デヂエ)の連携を試みてkintone?に出会う
2014.4 -
kintoneエバンジェリストに
2014.11
kintone好きが高じて、界隈初のkintone転職
2015.2
kintone Café 運営事務局開設、事務局メンバーに
2014.5 - 2014.10
kintone Café 福岡 Vol.1 - 3を主催
現在(kintone歴2年ちょっと、AWS歴数週間)
多分、 日本で唯一100%kintoneでご飯食べてる人
株式会社ジョイゾー?山下 竜(33) 福岡県大牟田市出身
「ブルーウェーブ」
という共通点
会社紹介「株式会社ジョイゾー」
3
会社名
?株式会社ジョイゾー
所在地
?東京都江東区木場3?5?5
設立
?2010年12月20日(6期目)
社員数
?8名(kintoneエバンジェリスト2名)
主な事業
?kintone導入支援?カスタマイズ開発
?サイボウズOffice/ガルーン構築支援 案件の9割以上がkintone
日本初定額制来店型システム開発「システム39」
4
kintoneエコシステム
いよいよ準備が整ってきた
新しいSI?働き方
コミュニティ
ユーザー
コアサービス
グローバル
他サービス
開発者/パートナー
グローバル
他サービス
コミュニティ
ユーザー
コアサービス
新しいSI?働き方 開発者/パートナー
kintoneエコシステムの本質
8
作って、使って、
コミュニケーション
して、楽しい!
ユーザーが、
コミュニティ参加者が、
開発者/パートナーが、
サイボウズの人が、
kintoneエコシステムの本質
9
作って、使って、
コミュニケーション
して、楽しい!
ユーザーが、
コミュニティ参加者が、
開発者/パートナーが、
サイボウズの人が、
kintone Caféも???
10
https://kintonecafe.com
kintone Caféを核とした
kintoneエコシステムを醸成
今日は私なりの切り口で
kintoneエコシステム
12
「kintoneエコシステム」構築の3つのテクニカルキーワード
Lv.1 kintoneプラグイン
kintone連携サービス
サーバレスアーキテクチャ
Lv.2
Lv.3
帳票
複合機
経費精算
基幹
EAI
BI
kintoneエコシステム
13
「kintoneエコシステム」構築の3つのテクニカルキーワード
Lv.1 kintoneプラグイン
kintone連携サービス
サーバレスアーキテクチャ
Lv.2
Lv.3
帳票
複合機
経費精算
基幹
EAI
BI
今日はもちろんココ!
kintoneとAWS
まず???
ナイスな相性だと
言われています!
AWS re:Invent 2015でも実感
15
kintoneコミュニティとAWSはベストパートナー?
なにやってるんすか?サイボウズの面々をre:Inventで捕獲の巻
(http://ascii.jp/elem/000/001/075/1075010/)
? kintoneコミュニティはAWSと急接近している
? AWSとkintoneは補完関係があって線は太くなっている
? Amazon IoTボタンでkintoneにレコード登録
? ディスラプトの怖さも感じている
? ファンを熱狂させるようなイベントをやってみたい
kintoneとAWS
16
? アプリケーション寄りPaaS(SaaS)
? クライアントサイド/フロントエンド
(UI/UX)
? 行動的/解釈の共有でアクションを起こし、
コミュニケーションで業務を回す
? インフラ寄りPaas(IaaS、BaaS)
? サーバーサイド/バックエンド???
(コマンド)
? 思考的/データを捌き事象を解釈する
APIで
結合?補完
良質のインプット
強力なデータ処理
kintoneエコシステム(王道っぽいAWSとkintoneの連携パターン)
17
Amazon DynamoDB
Stream
Amazon SNS
Amazon S3
Amazon Kinesis
Amazon
Lambda
Amazon EC2
Lambda
イベントソース
REST API
kintone on cybozu.com
?レコード操作
?ワークフロー操作
?スペース操作
?アプリ操作
REST API
kintone.proxy() &
Amazon API Gateway 経由もやっぱりイイ!
R
EST
A
PI
プリミティブな連携
?ホスティング
?バッチ処理
Amazon
API Gateway
AWS IoT
kintone REST API
一応おさらい
kintone3大要素とREST API
19
データベース プロセス管理 コミュニケーション
充実 強化中 弱い
APIからの操作も3大要素をバランスよく活用することが重要!
API操作で3大機能同士を密に結合できるようになると、更に便利になると期待しています!
kintone3大要素とREST API(ポータル画面)
20
スペースの
作成?メンバー更新等
アプリの作成?更新
(欲しい)
(参考:「cybozu.com developer network > kintone API」)
kintone3大要素とREST API(詳細画面)
21
レコードの
取得?登録?更新?削除
添付ファイルの
アップロード?ダウンロード
レコードの
ステータス変更
(欲しい)
(参考:「cybozu.com developer network > kintone API」)
AWS Lambdaによる
サーバレスアーキテクチャ
参考?引用「Serverless Architecture on AWS」
(http://www.slideshare.net/keisuke69/serverless-architecture-on-aws)
肝となる
サーバ(EC2)による処理系の例
23
データプッシュ
ポーリング?
待機?監視
データの発生状況を
ポーリングチェック
処理(コード)の
実行
?ロードバランス
?レプリケーション
?オートスケール
データ
サーバレス(Lambda)による処理系の例
24
データ
トリガー
データの発生が
トリガーとして渡る
?ロードバランス
?レプリケーション
?オートスケール
処理(コード)の
実行
? インフラ構築不要
? インフラの運用管理不要
? キャパシティ
? スケール
? デプロイ
? 障害耐性
? モニタリニグ
? ロギング
? セキュリティパッチ適用
サーバレス(Lambda)の恩恵
AWS Lambda
25
? Amazon S3
? Amazon Kinesis Streams
? Amazon DynamoDB
Streams
? Amazon Cognito
? Amazon SNS
? Amazon SNS
? Alexa AppKit
? Amazon SWF
? Amazon SES
? Amazon CloudWatch Logs
? Amazon Connected Home
? Amazon IoT
? (Schedule Event)
イベントソース
トリガー
Lambda関数の起動
Node.js
Python
Java
のコードを実行
最大5分間のタイムアウト
結局サーバレスとは?
26
EC2にあれこれ作って、処理しつつ、面倒見る
Lambdaでイベントに応じたアクションの
コードを書くだけ!
kintoneエコシステム(王道っぽいAWSとkintoneの連携パターン)
27
Amazon DynamoDB
Stream
Amazon SNS
Amazon S3
Amazon Kinesis
Amazon
Lambda
Amazon EC2
Lambda
イベントソース
REST API
kintone on cybozu.com
?レコード操作
?ワークフロー操作
?スペース操作
?アプリ操作
REST API
kintone.proxy() &
Amazon API Gateway 経由もやっぱりイイ!
R
EST
A
PI
プリミティブな連携
?ホスティング
?バッチ処理
Amazon
API Gateway
AWS IoT
kintone & AWSサーバレスアーキテクチャの
ベストプラクティス
その3
その2
kintoneとAWSサーバレスアーキテクチャのベストプラクティス
29
その1 AWS各サービスを用いたkintoneへのインプット
kintoneへのAPIアクセスのラッピング
kintoneからAWS各サービスへのアクセス
(従来IoT、kintone controller)
(Webhookからの連携、kintoneデータの柔軟な公開)
(kintoneデータを元にした機械学習)
その4 Schedule Eventによるkintoneバッチ処理
API
(定期的な集計、サービス間連携)
AWS各サービスを用いたkintoneへのインプット
30
?農業(圃場)
?見守り
?建設?工事現場
?工場設備
?エネルギー設備
現場
センサー
?温度
?湿度
?照度
?加速度
?騒音
センサー
クラウド kintone
?通知
?ワークフロー
?スレッド
?カスタマイズビュー
事象?データが発生する
データを捌き、
事象を解釈する
解釈の共有でアクションを
起こし、コミュニケーショ
ンで業務を回す
IoT
AWS各サービスを用いたkintoneへのインプット
31
kintone controller
REST API
AWS LambdaAWS IoT
コントローラー
IoT連携
?レコード操作
?ワークフロー操作
?スペース操作
?アプリ操作
①ボタンを押す ②IoT情報を受け取って、
次のサービスに渡す
③受け取った情報をトリガー
にkintoneにアクセス
kintoneへのAPIアクセスのラッピング
32
Webhook Event
REST
API
①Gitのプッシュ、
課題追加等の発生
②APIでパラメータを
渡す
③Eventでパラメータを受け取り、
APIでkintoneへ
Webhook(通知等)をAPI Gatewayを経由してLambdaで捌いた内容を
kintoneに連携
Webhookからのkintoneアクセス
kintoneへのAPIアクセスのラッピング
33
①kintoneデータへのアクセスをAPI Gatewayで
APIを再定義
②kintoneを意識することなく
有益な情報にアクセス
kintoneに蓄積されたデータをAPI Gatewayで再定義したAPIで柔軟に公開
kintoneのデータを再定義したAPIで公開
REST API Event REST API
RESTfull
Service
kintoneからAWS各サービスへのアクセス
34
kintoneのデータを元にしたMachine Learning
AWS
Lambda
kintone
on cybozu.com
①kintoneデータで
予測モデル作成
Amazon
API Gateway
Amazon
Machine Learning
②kintoneにデータ登録
③API(クエリ)で
パラメータを渡す
④Eventでパラメータを受け取り、
APIでリアルタイム予測へ
REST API Event REST API
⑤予測実行後
予測値を返す
※初動のモデル作成は直接実施
?(Lambda未経由)
⑥予測値をセット
kintone.proxy()
kintoneのデータ管理に予測機能を追加!
Schedule Eventによるkintoneバッチ処理
35
①Lambdaを定期起動
スケジュールイベント(定期実行)で、サービス間連携
Event
REST
API
連携
サービス
REST
API
②connpassのデータを取得
③connpassのデータを
kintoneへ
④kintoneに入ったデータを
kViewerで公開
デモ!デモ!
kintone & Backlog 連携
デモ1 Webhookからのkintoneインプット
Backlog→kintone連携
38
Webhook Event
REST
API
①課題追加
②APIでパラメータを
渡す
③Eventでパラメータを受け取り、
APIでkintoneへ
Webhook(通知等)をAPI Gatewayを経由してLambdaで捌いた内容を
kintoneに連携
39
kintone&Backlog連携
40
デモ!
kintone Switch
デモ2 kintoneからAWSサービスのコントロール
kintone界隈のIoTの人らしいもの
42
「2015/5/22 kintone hive 開催報告」より
やっぱりやっときましょう!
まずはデモ!
kintoneから電源ON/OFF
44
kintoneからデバイスをコントロール
REST API
Device
Shadow
kintoneからデバイスをコントロール
今回は電化製品の電源ON/OFF
kintoneから電源ON/OFF
45
REST API Event REST API
Device
Shadow
SOAP API
①スイッチON/OFF
②API GatewayとLambdaを介して、
Device ShadowのREST APIをコール
③Device Shadowで
Raspberry Piを制御
④Raspberry PiからLAN内の
Wemoにアクセス
⑤家電の電源をON/OFF
その3
その2
(おさらい)kintoneとAWSサーバレスアーキテクチャのベストプラクティス
46
その1 AWS各サービスを用いたkintoneへのインプット
kintoneへのAPIアクセスのラッピング
kintoneからAWS各サービスへのアクセス
(従来IoT、kintone controller)
(Webhookからの連携、kintoneデータの柔軟な公開)
(kintoneデータを元にした機械学習、kintone Switch)
その4 Schedule Eventによるkintoneバッチ処理
API
(定期的な集計、サービス間連携)
kintoneエコシステム真時代の到来!
なぜ今なのか?
改めて、
サーバーレスアーキテクチャが
登場したから?
キーワードですが、
いち要素にすぎません
コミュニティ
ユーザー
コアサービス
グローバル
他サービス
新しいSI?働き方 開発者/パートナー
もう一度見返してみましょう!
新しいSI?働き方
コミュニティ
ユーザー
コアサービス
グローバル
他サービス
2011
2006
2014
2014
2015
2013
2011
開発者/パートナー
それぞれの進化からピースが全て
実際に埋まったから^^
紙芝居でなく写真になり、
システムも今日実証しました!
kintoneエコシステムの本質
52
作って、使って、
コミュニケーション
して、楽しい!
ユーザーが、
コミュニティ参加者が、
開発者/パートナーが、
サイボウズの人が、
办颈苍迟辞苍别、楽しんでみませんか?
kintone Café 札幌 Vol.7 「kintoneエコシステム真時代の幕開け! -kintoneエコシステムとAWSサーバレスアーキテクチャ-」

More Related Content

kintone Café 札幌 Vol.7 「kintoneエコシステム真時代の幕開け! -kintoneエコシステムとAWSサーバレスアーキテクチャ-」