Global Azure BootCamp 2019 参加レポート
Global Azure BootCamp 2019
~当日のTwitterハッシュタグ~
#GlobalAzure
#Jazug
Global Azure Bootcamp 2019 イベントページ(connpass)
イベント告知
5月23日 Jazug Night 開催
5月6〜8 Buildのローカルイベントが開催
IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノート
C#での事例はよくあるけどNode.jsで試して見た。
IoT × サーバレス
ラズパイにIoT Edge Runtimeをインストール
そしてカードリーダーを接続してICカードの情報をブラウザに表示する。
カードのかざすとAzureからWeb上に情報を表示する機能を作成。
なんでやろうとしたのか?
今学びたいことを詰め込めるだけ詰め込んだ。 * IoT Edgeを習得したい * サーバーレス構成を取得したい
なぜオープンに?
この自己学習の内容は、GitHub上で公開をしている。 何故公開しようとしたのか。 * エンジニアとしてのチャレンジ! * せっかくやったのなら見てもらいたい、 * 良い書き方があったら教えてほしいから公開。 * ゆくゆくはコミットしていきたい。 * イベントでも登壇して話せる材料にもなる。
Azure IoT Hub
Azure IoT Hubとは。
デバイスとクラウド(Azure)を接続する入り口になる。
Azure IoT Hub から Stream Analytics へデータを送り他サービスへ振り分けるなどの用途に使用する。
→ Blobストレージへデータ保存など振り分け。
使用しているプロトコル = MQTTかHTTP、AMQP SDKが豊富にある、メジャーどころの言語をサポートしている
Stream Analyticsは少し高い。
代わりに Message Routing と Device Twins を使うとローコスト
→状態やメタデータを取り扱う。(IoT Hubの機能)
※Jsonで定義する。
Azure IoT Edge
簡潔に言うとメッセージのやり取りを行う。
複数のモジュールをクラウドで管理することができるツール。
ラズパイにコンテナを展開するのにIoT Hubを使うと簡単にできた。
→メモリは問題なし
※ IoTのコンテナはモジュールと呼ぶ。
各モジュールは独立したプロセス空間でOSが実行されている。
ラズパイの中でルーティングが可能。
IoT Edgeのコマンドは、Dokcerコマンドと同じようなもの。
Dockerを使用しているのでDockerコマンドも使用可能。
IoT Edge のいいところ。
モノリスの世界にぶち当たる、そこでIoTEdgeでモジュール開発。
→生産性が上がって良い。
- モジュール間でメッセージルーティングが可能
- サーバーサイドの技術はIoT技術に活かせる!!
SignalR Service サーバーをホストしてくれるサービス。
リアルタイム通信するためのライブラリ。
ARMテンプレート
Terraformのほうが汎用的に使えるのと思う。
パラメータ指定に変数やビルトイン関数が使用可能。
AzrueのREST APIと連動している、APIのバージョンに留意すること。
月4000円でできる?LogicAppsとFunctionsで実現するサーバレスで低コストな自動化
リクルートの監視基盤を更改したお話し。 リクルートが提供している複数のサービス基盤であるため、 1分1秒でも止められない大切な役割を担っている。
現状はローカルのツールを使用して障害切り分けを実施している。
→人手を挟んでるので、障害に気づくまでに15分以上かかる場合もある。
* モダンな良いものに変えたい。
→モダンでいけててかっこいい、イケメン監視システムを作りたい。
すべてをモダンな変える場合は開発、運用工数が膨大化する。
他の問題として、
* OSSは機能が足りない
* プログラムに明るくない、etc,,,
「 本来何がしたかったのかに立ち返った 」
* 1秒でも早く気付ける監視システムを作りたい!今すぐに!
反省して考え治す。→本質的な課題に目を向ける。
Logic AppsとFanctions
Logic AppsはノンプログラミングのAPIサービス。
サーバーレスなのでメンテナンス不要。
変数をGUIで設定できる。
いきなりコード開発が始められてコード以外のことを考えなくて良い!
環境の作成に1分かからない程度で始められる。
GUIでFunctionを作る。
障害の発生から、検知するまでに数10秒程でSlackに通知されるようになった。
→ 障害コールより先にSlack通知が届くようになった。
まとめ
- かっこいい!モダン!に踊らされないこと。
→本来の課題に立ち返ろう - Logic AppsとFanctionsはすぐにでも始められる!
(ここあたりから疲労が凄い、、、)
日本の製造業におけるIoTと未来テクノロジー
15分 LT
愛知県 製造出荷が日本でダントツで一番
IoTやるならうってつけの街。
現状はIT化が遅れていてIoTを導入している会社は少ない。
Azure IoT Centrall
フルマネージドのIoT SaaS
これだけで一つのサービスが作れる。
製造業の環境が目まぐるしく変化している。
デモ
Azure IoT Centralを使用して接続、管理、監視、情報収集、蓄積、可視化まですべてFull Managedで使えるサービスとラズパイを組み合わせてデモを実施していました。
VTuberはもう古い???Azure SignalR ServiceでMTuber Platformつくってみる!
30でサーバーレスで作成する。 HoloLens どこに何を投げるのかFunctionsに教える必要があるよ!
- SignalR Service Binding
→ Server Streamingのための仕組み - Azure Functionsの拡張機能
- Unity now supports .NET Standerd
SignalR Client
FunctionsとSignalRは相性が良い!
(用途に注意)
ほぼデモのセッションでした。
Kinect と HoloLensを使用したセッションでしたが、
HoloLensのWindows Updeteが走ってしまいKinectのみのデモでした。
(懇親会ではHoloLensを使用したデモをやったそうです、、、)
Kinectからで取得したモーションをFunctionsに送りサーバーレスでキャラクターを動かすといった内容で、そこまで大きなラグもなく動作していたので面白いデモでした。
注意
Functionsは一日2万件のメッセージまでは無料で使用可能です。
このセッションでは、45分間で237万件のメッセージが飛ばされたらしいです!
(おそらくエグい課金額になったと思われます。。。)
見えてきた!? Windows Virtual Desktop のしくみ
「 本日の目標!WVDの今を知る!!! 」
WVDとは!
配信方式
- Personal
- Pooled
負荷分散方式
- Breadth First
- Depth First
最大接続数 = 999999
(デフォルトは Breadth First なのでサーバーが死のうがなんだろうが振り分け続ける)
マスター更新
- フルクローン
- リンククローン(微妙?)
現実的なのはフルクローン??
オートスケール
動かすのが手間、一台サーバーが必要
有用そうな設定項目は?
* MinimumNumberOfRDSH = どんな状況でも可動しているRDS数
* SessionThresholdPerCPU = Cpu の最大セッション数に基づいて起動
(時間での設定しかできない)
→ 結果微妙
WVD構成
ユーザーで基盤を管理する必要がない。 ※ 現時点では、米国東部と中部のみ。
Active Directoryが必要 ユーザーの同期も必要なのでAADCが必要。 Host Pool も必要? そこの金額は必要。
日本はいつ来るの?? →もうすぐ来そう!(西はわからない)
接続の流れ
スマホ版のアプリはまだ出てない。 今はブラウザからアクセス SSOの設定が今はまだめんどくさい。
必要なライセンス
Microsoft 365 E3 以上、A3以上 Business、F1 Windows10 E3 以上、A3以上 RDS CAL (RDSHの場合)
悲しい現状
- 設定、接続、リソース状況の確認
→ 設定とかはそれぞれPowerShellで一個一個取得して突合しないとわからない。
” Excelで管理した方が早い ” - セッションログ
→ 非常に見づらい、、、(ないよりまし状態、ユーザが接続した状況は見れる) - エラー通知機能が貧弱
- オートスケールの日/週の指定
- ユーザセッションからのVID起動
- 作成済みのHostPoolへのVM追加ができない
- アイドル、接続、ログオフ時間
→ コントロールができずマスター作った時の一発決め打ち
Fslogix
WVDの目玉機能 → ユーザープロファイルの管理機能を開発して販売している会社 状況は不明、他社に売ってるのか独占か。。。
プロファイルのあれこれ
- 移動プロファイル
→ログオン時にファイルサーバーからプロファイルを呼び出す必要ある。 - フォルダリダイレクト
→結局はネットワーク上のファイルサーバーだよね、、、 - UPD
→ 2016サーバーで使える、やっぱり遅い、、、
「共通:一箇所にしか置けなく単一障害点になる。
プロファイルのサイズだけで2GB!
毎回持ってくるのは遅いよね、、、」
O365 Container
Office製品のキャッシュのSMBを通してファイルサーバーに保存可能Profile Container
ユーザープロファイル全体をSMBを通してファイルサーバーに保存可能Cloud Cache
ユーザープロファイルをSMBを通してファイルサーバーに保存可能
しかも最大4日所
またPage Blobに保存が可能
負荷の分散ができる!App Masking
使わせたくないアプリケーションを制限できないが、できるようになる。 しかもリアルタイム 視覚上では使える使えないがわからない。
WVD導入に向かない 2つの要件
- トラブル時の原因究明を求める
- コスト面から、余裕のあるリソースを認めない