Cloud Tech Log

Microsoft Azure、Amazon Web Service(AWS)、Ansible

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とは!

  • 管理基盤はAzureのみ!
  • Windows Virtual Desktop
  • リリース2019年3月21
  • 提供サービス RDSとVDI
    Windows7は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の場合)

悲しい現状

  1. 設定、接続、リソース状況の確認
      → 設定とかはそれぞれPowerShellで一個一個取得して突合しないとわからない。
    Excelで管理した方が早い ”
  2. セッションログ
      → 非常に見づらい、、、(ないよりまし状態、ユーザが接続した状況は見れる)
  3. エラー通知機能が貧弱
  4. オートスケールの日/週の指定
  5. ユーザセッションからのVID起動
  6. 作成済みのHostPoolへのVM追加ができない
  7. アイドル、接続、ログオフ時間
    → コントロールができずマスター作った時の一発決め打ち

Fslogix

WVDの目玉機能 → ユーザープロファイルの管理機能を開発して販売している会社 状況は不明、他社に売ってるのか独占か。。。

プロファイルのあれこれ

  • 移動プロファイル
    →ログオン時にファイルサーバーからプロファイルを呼び出す必要ある。
  • フォルダリダイレクト
    →結局はネットワーク上のファイルサーバーだよね、、、
  • UPD
    → 2016サーバーで使える、やっぱり遅い、、、

「共通:一箇所にしか置けなく単一障害点になる。
 プロファイルのサイズだけで2GB!
 毎回持ってくるのは遅いよね、、、」

  • O365 Container
    Office製品のキャッシュのSMBを通してファイルサーバーに保存可能

  • Profile Container
    ユーザープロファイル全体をSMBを通してファイルサーバーに保存可能

  • Cloud Cache
    ユーザープロファイルをSMBを通してファイルサーバーに保存可能
    しかも最大4日所
    またPage Blobに保存が可能
    負荷の分散ができる!

  • App Masking
    使わせたくないアプリケーションを制限できないが、できるようになる。 しかもリアルタイム 視覚上では使える使えないがわからない。

  • Java Redirection
    複数のJavaのバージョンがインストールできる。

WVD導入に向かない 2つの要件

  1. トラブル時の原因究明を求める
  2. コスト面から、余裕のあるリソースを認めない