差分表示
- 最後の更新で追加された行はこのように表示します。
- 最後の更新で削除された行は
このように表示します。
AD05 ハードコアデバッギング 資料
https://sway.com/3d6nNMtdQYxI2pJN?ref=Link
* 開発者におくる Power BI を使う時に考えるべきアーキテクチャ 〜 データを溜めるのは誰だ?
- Twitter @yugoes1021
- デモ: 参加者がQRコードを読んで、アンケートに答える
-- Power BIでリアルタイム集計
-- 実装はMicrosoft Forms -> Microsoft Flow(Logic Appsでも可能) -> Power BI Service
-- 内部の詳細は写真にURLあり
- Power BI Desktopでレポート作成 → publish
-- Google Analyticsなどとも接続可能
-- 利用するには、Office 365のアカウントを作るのが正攻法
-- Azure ADを自分で作ればアカウント不要
- Power BI Embedded
-- アプリにレポートを埋め込みたい場合に使う
- 大事なのは
-- 計画
-- ビジネスニーズ
-- シナリオ
-- レポートを見て何をするのか?
-- レポートが表現するストーリー
-- 作り直し、やり直しを恐れない
- データを見て検討し、現場に反映するまでがBI
-- 現場の人が直接データを見るのもアリ
- ある時点までのデータ・今この瞬間のデータ は明確に分ける
-- 分析用レポート・リアルタイムダッシュボード
-- リアルタイムダッシュボード
--- 現状を見て、予定通りか、異常はないか(OKかNGか)
** データの取り方
- データを取る
-- インポート
-- DirectQuery
-- ライブ接続
- データを待つ
-- REST API
- インポート
-- 公開すると、Power BI Serviceから定期的にデータを取りに行く
-- 常に全件更新
-- じっくり分析用
- DirectQuery
-- レポートを参照した瞬間にSQLが発行される
-- 長時間かかるクエリには不向き
-- ある程度のリアルタイム性
- ライブ接続
-- SQL Server/AzureのAnalysis Serviceに接続
-- DirectQueryと同じ動作
- REST API
-- Power BI ServiceにJSONをPOSTするとデータ更新
-- レポートを見てる最中もリアルタイム更新される
-- Power BI Desktopは使えない?
-- あんまり高頻度でリクエストするとエラーになる(0.5秒おきくらいを推奨)
** DAX
- Data Analysis Expressions
- 計算列やメジャーを作成するために使用する言語
- Excelライク
** その他
- Excelで集計作業すると、データを準備するのに労力の80%くらいがかかっている
-- DBとBIツールを連携すると、そこを20%くらいにできる
- リアルタイムダッシュボード
-- ストリームデータもDBに保存しておく。後から分析できるようにするため
- オンプレミスデータゲートウェイ
- データを溜めるのは誰だ?
-- エンジニアはもちろん、BIに関わる全ての人
* なぜ、そのサービスを選ぶのか?ークラウドにおけるアーキテクチャ選択眼
- クラウドでは、サービスを前提として必要な部分だけを作る or 設定すれば動く
- クラウドでは変化に適応できる
-- なぜならクラウド自身がそれがないと成立しないから
- クラウドの特性を理解した上で設計する
-- クラウド前提のアーキテクチャを理解する
- 制約を受ける代わりに、変化する力を得る
-- 何が制約で、何を得られるかを正しく理解する
-- 最先端が正しいとは限らない
- オンプレをそのままクラウドに持って行くのは難しい
- コンテナは「実行環境のバージョン管理」
- Blue Green型の無停止デプロイ
- サーバレス: 現代のシェルスクリプト。簡単なことを簡単にできる
- 非同期による分離
-- 機能の分離: キューの形式が同じならサービスが増えても影響ない
-- 性能の分離: キューの向こうの負荷に引きずられない
- 大本営発表は信じない。自分で試すこと
- なぜそのサービスを選ぶのか、エンジニアに説明責任がある
* CI20 プロキシ設定自動化
途中参加。ルーティングやIPアドレス制限を自動で設定するシステム?
- Web Apps
-- 当時はIISのみ
-- グローバルIPが4つ。メンテナンスで変更される
-- 20秒ほどアクセスしないとコールド状態になり、次回のアクセスが6〜7秒遅延する
- SQL
-- Azure ADでユーザー認証
- Application Insight
-- Web Apps, FunctionsからTrackEventを送信
* NoOps へ舵を切れ 〜 Azure で実現するサーバレス自律運用システム
- 完全自動化はほんとに可能なのか?
- NoOps = No Operations…ちょっと違う
-- No Uncomfortable Ops。運用の嬉しくないところをなくそう
-- 利用者の体験を妨げない
-- 「トイル」の最小化(リリース手続き・パッチ適用・リソース監視・夜間待機など)
-- コストの最適化
- 障害時の切り分け・不具合修正・デプロイなどほとんどを人間が対応している
-- 緊急対応・回復処理はシステムに任せて、人間は原因究明に集中したい
-- インフラ担当の働き方改革になる
- NoOpsの3つの能力
-- 自己修復
-- 無停止メンテナンス
-- 自律的リソース調整
--- 予定外の負荷変動に自律的に対応
- 実例: AzureのMeltdown/Spectreへの対応
-- IaaS利用者からクレープ殺到
-- PasS利用者は気づきもしなかった
-- Azureだと「問題の診断と解決」で裏で走ったメンテナンスのログが見れる
-- 詳細はセッションAD38で
- 自己修復は「取り回しの軽さ」
-- ChefでWordpressを構築: 240秒
-- WebApp for Containersだと14秒
-- 復元力。「壊れない」から「いつでも回復できる」への価値観の転換
-- https://docs.microsoft.com/ja-jp/azure/architecture/patterns/category/resiliency
- 回復性 = 復元力 + 回復メカニズム
- 30秒で復旧できれば、障害ではなく遅延で済む
- 一つの目安として、復元力が高いのはコンテナやサーバレスとして扱うもの、VM や非冗長構成は復元力としては低い
- 高い回復性があると、いろいろと広がる
-- 秒単位のスケールアウト・スケールイン
-- 障害発生時の自己回復
-- オンザフライでのインスタンス変更
- 詳しくは、 slideshare 大規模メンテナンスの裏で何が起きていたのか
- 高い回復性を備えたマネージドサービスを選択する
-- 仕様にあるフェイルオーバーの時間・スケールアウトの時間から推測するといい
- オンプレでもNoOpsは可能だが、クラウドに似た形に役割と組織の再編成が必要
- アプリにも回復力を持たせる必要がある
-- 例: 長いバッチを走らせてるとインスタンスを移動できない
-- 「大きな処理より複数の小さな処理」「ステートレス」「非同期処理」「処理の冪等性」「処理結果をすべて記録」
-- シンプルな「リトライ」で素早く回復するのを目指す
- 非機能要求のハードルを上げる
-- 設計が大事。回復性のレベルは後から変更できない。最初から高い目標を目指す
- クラウドにお任せ → 設計がおざなりになりがち。アプリもちゃんと設計してね
* セキュリティマニアックス 〜みんなで守ろうコネクテッドカー〜
- ラジコンでデモもやります
- 自動車のソフトウェア化
-- ハードウェアの計器がディスプレイに変わってきている
-- 今どきは戦闘機もタッチパネルになってる
-- F-35戦闘機はソースコードが2500万行
-- 最近のハイエンド車は1億行。バグがあるに決まってる
- ハンダ
-- ハンダを溶かしてチップをはがし、解析用ボードを挟み込む
- 難読化
-- チップのファームウェアをダンプしたら逆アセンブルは簡単
-- 車ならではの事情としては、マイコンなので処理速度の制限がある。高温や振動に耐える必要もある
-- Hopper disassembler使ってた
- コード署名チェック
-- パスワードチェックのプログラムを解析するデモ
-- パスワードチェック後のジャンプ命令を書き換えて、任意のパスワードでチェックが通るようにした
-- こういうことができるのでコード署名しましょう
- 自動車のCASE
-- Connected, Autonomous, Sharing, EV
- CASのリスク
-- サプライチェーンリスク
--- 部品メーカーの悪い人がバックドアを仕込むリスク
-- 物理的なハッキング
--- カーシェアリングで、借し出す車に仕掛ける
--- GPS付けて個人情報を取ったりとか
-- アプリからの侵入
--- 車はちゃんとしててもアプリの実装が甘かったり
-- 汚染データ・ジャミング
--- ドローンの自動離発着が、昼休みになるとトラブる
--- 昼休みにタクシーがたくさん止まってた
--- 今のタクシーはGPSで位置を監視されている → GPSジャマー(個人でも買える)を使ってサボってた
--- それがドローンにも影響してた
-- システムへの攻撃
--- 道路情報・運行情報のシステムをハッキングして行き先を変える
- リスクの範囲が広すぎるので、みなさん協力してください
- EVでは?
-- ガソリン車でも既に電子制御(バイワイヤー)されているので同じ
-- 実車のCANメッセージを使ってレースゲームのコントローラを作った人がいる
- 代表的なセンシング技術と攻撃
-- ミリ波レーダー
-- 超音波
--- 逆位相の音波を当てると何も見えなくなる
-- カメラ
--- 強い光を当てる
- 事例: ジープチェロキー
- 事例: テスラ
- ラジコンカーハッキングデモ
-- nmap -> Webの管理画面 -> ディレクトリトラバーサル -> .bash_historyから管理パスワードを拾う -> sshログイン -> cansend
* Blazor
TODO: ノートを文字起こし
* HoloLens で実装する AI と IoT
- 今までのIT技術は、デスクワーカーの効率化が中心だった
- HoloLensで現場の作業者(ファーストラインワーカー)の効率化をしたい
- 空間音響
- 活用シーン
-- トレーニング
-- 作業支援
-- 設計
-- 構成・見積もり
-- 販売支援
- Hololens → クラウド → PCなど
-- 熟練者の作業の流れを記録
-- IoTのエッジデバイスとして使う
- IoTデバイスで集めたデータをHololensで可視化する
-- バルブを閉めたら、ちゃんと水が止まったかをHololensで確認
-- クラウド側の流れは画像参照
-- 本番環境では、Power BIとも接続しておくと、Hololensを持ってない人もデータが確認できる
- IoTデバイスは、オンラインにラズパイのシミュレータもある
- Dynamics365
-- Hololensで作業のアシストはできた
-- それ以外の指示書作成・スケジュール・報告・在庫管理などを効率化
- AI
-- ボイスメモをテキスト化・翻訳して記録
-- Siriみたいなエージェントと会話
-- COTOHAと連携してみた
-- コピー機が紙詰まり
--- プリンタの状態はクラウドにつながってて把握されている
--- 今プリンタの前にいることはHololensでわかる
--- ここを直してください、と3Dモデルで表示
* 帰ってきた インフラ野郎 Azure チーム 〜Azure データセンター テクノロジー解体新書 2018春〜
- 非公開情報は出せませんが、論文でこっそり公開してるようなのをいろいろ話します
- Azureなう
-- 自前で海底ケーブル引いてます
-- Skylakeの48コアが主流
-- リスク = 発生確率 * 影響の大きさ
--- これまでは後者、広域災害とかを重視してた
--- これからは前者、データセンターレベルの障害も重視。意外とこちらが多かった
-- IP anycastで、すべてのゾーンにロードバランサを持ってる
- アベイラビリティゾーンの設計は効率重視型・都市適応型がある
-- 都市適応型でも遅延は2ms程度に抑えている
- Azure Cloud Shell
-- ユーザごとにdockerでubuntuコンテナを生成
-- 20分無操作で破棄される
-- $HOMEの下はAzure Filesに永続化される
-- よく使うツールをかなり網羅している
-- Azureの認証周りが設定済み
-- Powershell Core on Linuxも今度出る?
- ライブマイグレーション
-- インスタンスを動かしたまま引っ越す
-- 故障が予測できた場合や、メンテナンス用にサーバを空ける用途にも使われる
- Azure OS
-- Windows Serverのサブセット
-- ネイティブコードのみ、ドライバなどもない
-- できるだけ再起動したくない
-- ライブパッチングで、最大30秒程度の停止で済む
- ユーザーレベルではAVSetsをおすすめ
-- AVSets内の複数のVMは同時にメンテナンスされない(Update Domain)
-- メンテナンス情報が取れる(Instance Metadata)
- PaaSなら上記は勝手にやってくれる
- リージョン間ネットワーク
-- Azureサービス間の通信はインターネットに出ない
- SmartNIC
-- FPGAを活用したNIC (Accelerated Networking)
-- 障害はストレージが多いが、ストレージにアクセスするネットワークの障害が多い
-- そこを安定させる目的もある
- DPDK
-- アプリからNICに直接アクセス
-- VM間のレイテンシが数マイクロ秒になる
- 同一リージョン内 数百us, 28.6Gbps
- 東京・大阪間 数ms, 6Gbps
- (高いインスタンスを使ってるが、デフォルト設定)
- Terraform
-- マルチクラウド対応のプロビジョニングツール
- Azure SDK for Goも拡充中。Goおすすめ
AD05 ハードコアデバッギング 資料
https://sway.com/3d6nNMtdQYxI2pJN?ref=Link
#contents
* 開発者におくる Power BI を使う時に考えるべきアーキテクチャ 〜 データを溜めるのは誰だ? [#ycd00f33]
- Twitter @yugoes1021
- デモ: 参加者がQRコードを読んで、アンケートに答える
-- Power BIでリアルタイム集計
-- 実装はMicrosoft Forms -> Microsoft Flow(Logic Appsでも可能) -> Power BI Service
-- 内部の詳細: [[アンケートを即可視化!〜MS Forms ⇒ MS Flow ⇒ Power BI〜>https://www.slideshare.net/yugoes1021/ms-forms-ms-flow-power-bi-83167435]]
- Power BI Desktopでレポート作成 → publish
-- Google Analyticsなどとも接続可能
-- 利用するには、Office 365のアカウントを作るのが正攻法
-- Azure ADを自分で作ればアカウント不要
- Power BI Embedded
-- アプリにレポートを埋め込みたい場合に使う
- 大事なのは
-- 計画
-- ビジネスニーズ
-- シナリオ
-- レポートを見て何をするのか?
-- レポートが表現するストーリー
-- 作り直し、やり直しを恐れない
- データを見て検討し、現場に反映するまでがBI
-- 現場の人が直接データを見るのもアリ
- ある時点までのデータ・今この瞬間のデータ は明確に分ける
-- 分析用レポート・リアルタイムダッシュボード
-- リアルタイムダッシュボード
--- 現状を見て、予定通りか、異常はないか(OKかNGか)
** データの取り方 [#kf18ddee]
- データを取る
-- インポート
-- DirectQuery
-- ライブ接続
- データを待つ
-- REST API
- インポート
-- 公開すると、Power BI Serviceから定期的にデータを取りに行く
-- 常に全件更新
-- じっくり分析用
- DirectQuery
-- レポートを参照した瞬間にSQLが発行される
-- 長時間かかるクエリには不向き
-- ある程度のリアルタイム性
- ライブ接続
-- SQL Server/AzureのAnalysis Serviceに接続
-- DirectQueryと同じ動作
- REST API
-- Power BI ServiceにJSONをPOSTするとデータ更新
-- レポートを見てる最中もリアルタイム更新される
-- Power BI Desktopは使えない?
-- あんまり高頻度でリクエストするとエラーになる(0.5秒おきくらいを推奨)
** DAX [#d0ce7bc3]
- Data Analysis Expressions
- 計算列やメジャーを作成するために使用する言語
- Excelライク
** その他 [#sd642017]
- Excelで集計作業すると、データを準備するのに労力の80%くらいがかかっている
-- DBとBIツールを連携すると、そこを20%くらいにできる
- リアルタイムダッシュボード
-- ストリームデータもDBに保存しておく。後から分析できるようにするため
- オンプレミスデータゲートウェイ
- データを溜めるのは誰だ?
-- エンジニアはもちろん、BIに関わる全ての人
* なぜ、そのサービスを選ぶのか?ークラウドにおけるアーキテクチャ選択眼 [#qaef3362]
- クラウドでは、サービスを前提として必要な部分だけを作る or 設定すれば動く
- クラウドでは変化に適応できる
-- なぜならクラウド自身がそれがないと成立しないから
- クラウドの特性を理解した上で設計する
-- クラウド前提のアーキテクチャを理解する
- 制約を受ける代わりに、変化する力を得る
-- 何が制約で、何を得られるかを正しく理解する
-- 最先端が正しいとは限らない
- オンプレをそのままクラウドに持って行くのは難しい
- コンテナは「実行環境のバージョン管理」
- Blue Green型の無停止デプロイ
- サーバレス: 現代のシェルスクリプト。簡単なことを簡単にできる
- 非同期による分離
-- 機能の分離: キューの形式が同じならサービスが増えても影響ない
-- 性能の分離: キューの向こうの負荷に引きずられない
- 大本営発表は信じない。自分で試すこと
- なぜそのサービスを選ぶのか、エンジニアに説明責任がある
* 加速するSaaS、PaaSシフトに対応できるNWソリューション by Azure PaaS [#y55eaa39]
途中参加。ルーティングやIPアドレス制限を自動で設定するシステム?
- Web Apps
-- 当時はIISのみ
-- グローバルIPが4つ。メンテナンスで変更される
-- 20秒ほどアクセスしないとコールド状態になり、次回のアクセスが6〜7秒遅延する
- SQL
-- Azure ADでユーザー認証
- Application Insight
-- Web Apps, FunctionsからTrackEventを送信
* NoOps へ舵を切れ 〜 Azure で実現するサーバレス自律運用システム [#e1dec96f]
- 完全自動化はほんとに可能なのか?
- NoOps = No Operations…ちょっと違う
-- No Uncomfortable Ops。運用の嬉しくないところをなくそう
-- 利用者の体験を妨げない
-- 「トイル」の最小化(リリース手続き・パッチ適用・リソース監視・夜間待機など)
-- コストの最適化
- 障害時の切り分け・不具合修正・デプロイなどほとんどを人間が対応している
-- 緊急対応・回復処理はシステムに任せて、人間は原因究明に集中したい
-- インフラ担当の働き方改革になる
- NoOpsの3つの能力
-- 自己修復
-- 無停止メンテナンス
-- 自律的リソース調整
--- 予定外の負荷変動に自律的に対応
- 実例: AzureのMeltdown/Spectreへの対応
-- IaaS利用者からクレーム殺到
-- PasS利用者は気づきもしなかった
-- Azureだと「問題の診断と解決」で裏で走ったメンテナンスのログが見れる
-- 詳細はセッションAD38で
- 自己修復は「取り回しの軽さ」
-- ChefでWordpressを構築: 240秒
-- WebApp for Containersだと14秒
-- 復元力。「壊れない」から「いつでも回復できる」への価値観の転換
-- https://docs.microsoft.com/ja-jp/azure/architecture/patterns/category/resiliency
- 回復性 = 復元力 + 回復メカニズム
- 30秒で復旧できれば、障害ではなく遅延で済む
- 一つの目安として、復元力が高いのはコンテナやサーバレスとして扱うもの、VM や非冗長構成は復元力としては低い
- 高い回復性があると、いろいろと広がる
-- 秒単位のスケールアウト・スケールイン
-- 障害発生時の自己回復
-- オンザフライでのインスタンス変更
- 高い回復性を備えたマネージドサービスを選択する
-- 仕様にあるフェイルオーバーの時間・スケールアウトの時間から推測するといい
- オンプレでもNoOpsは可能だが、クラウドに似た形に役割と組織の再編成が必要
- アプリにも回復力を持たせる必要がある
-- 例: 長いバッチを走らせてるとインスタンスを移動できない
-- 「大きな処理より複数の小さな処理」「ステートレス」「非同期処理」「処理の冪等性」「処理結果をすべて記録」
-- シンプルな「リトライ」で素早く回復するのを目指す
- 非機能要求のハードルを上げる
-- 設計が大事。回復性のレベルは後から変更できない。最初から高い目標を目指す
- クラウドにお任せ → 設計がおざなりになりがち。アプリもちゃんと設計してね
* セキュリティマニアックス 〜みんなで守ろうコネクテッドカー〜 [#x05a2e75]
- ラジコンでデモもやります
- 自動車のソフトウェア化
-- ハードウェアの計器がディスプレイに変わってきている
-- 今どきは戦闘機もタッチパネルになってる
-- F-35戦闘機はソースコードが2500万行
-- 最近のハイエンド車は1億行。バグがあるに決まってる
- ハンダ
-- ハンダを溶かしてチップをはがし、解析用ボードを挟み込む
- 難読化
-- チップのファームウェアをダンプしたら逆アセンブルは簡単
-- 車ならではの事情としては、マイコンなので処理速度の制限がある。高温や振動に耐える必要もある
-- Hopper disassembler使ってた
- コード署名チェック
-- パスワードチェックのプログラムを解析するデモ
-- パスワードチェック後のジャンプ命令を書き換えて、任意のパスワードでチェックが通るようにした
-- こういうことができるのでコード署名しましょう
- 自動車のCASE
-- Connected, Autonomous, Sharing, EV
- CASのリスク
-- サプライチェーンリスク
--- 部品メーカーの悪い人がバックドアを仕込むリスク
-- 物理的なハッキング
--- カーシェアリングで、借し出す車に仕掛ける
--- GPS付けて個人情報を取ったりとか
-- アプリからの侵入
--- 車はちゃんとしててもアプリの実装が甘かったり
-- 汚染データ・ジャミング
--- ドローンの自動離発着が、昼休みになるとトラブる
--- 昼休みにタクシーがたくさん止まってた
--- 今のタクシーはGPSで位置を監視されている → GPSジャマー(個人でも買える)を使ってサボってた
--- それがドローンにも影響してた
-- システムへの攻撃
--- 道路情報・運行情報のシステムをハッキングして行き先を変える
- リスクの範囲が広すぎるので、みなさん協力してください
- EVでは?
-- ガソリン車でも既に電子制御(バイワイヤー)されているので同じ
-- 実車のCANメッセージを使ってレースゲームのコントローラを作った人がいる
- 代表的なセンシング技術と攻撃
-- ミリ波レーダー
-- 超音波
--- 逆位相の音波を当てると何も見えなくなる
-- カメラ
--- 強い光を当てる
- 事例: ジープチェロキー
- 事例: テスラ
- ラジコンカーハッキングデモ
-- nmap -> Webの管理画面 -> ディレクトリトラバーサル -> .bash_historyから管理パスワードを拾う -> sshログイン -> cansend
* C# で Single Page Web アプリケーションを開発できる Blazor ― その魅力 [#q7d6ee22]
- 講演者の経験
-- サーバをC#で実装
-- クライアントをAngular + TypeScriptで実装
- Blazorは、WebAssemblyで.NETランタイムを実行する仕組み
-- AjaxでDLLを読む
-- SPAのフレームワーク込み
-- VSのIDEサポート
-- Razorテンプレートを使用
- C#なのでサーバとクライアントで型やロジックを共有できる
-- JSONだと日付型のシリアライズがいまいち(?)
- NuGetライブラリの資産も使える
- html内もリファクタや参照元検索ができる
- まだExperimental
- 欠点: ダウンロードするDLLのサイズが大きい
* HoloLens で実装する AI と IoT [#s3ccf182]
- 今までのIT技術は、デスクワーカーの効率化が中心だった
- HoloLensで現場の作業者(ファーストラインワーカー)の効率化をしたい
- 空間音響
- 活用シーン
-- トレーニング
-- 作業支援
-- 設計
-- 構成・見積もり
-- 販売支援
- Hololens → クラウド → PCなど
-- 熟練者の作業の流れを記録
-- IoTのエッジデバイスとして使う
- IoTデバイスで集めたデータをHololensで可視化する
-- バルブを閉めたら、ちゃんと水が止まったかをHololensで確認
-- クラウド側の流れは画像参照
-- 本番環境では、Power BIとも接続しておくと、Hololensを持ってない人もデータが確認できる
- IoTデバイスは、オンラインにラズパイのシミュレータもある
- Dynamics365
-- Hololensで作業のアシストはできた
-- それ以外の指示書作成・スケジュール・報告・在庫管理などを効率化
- AI
-- ボイスメモをテキスト化・翻訳して記録
-- Siriみたいなエージェントと会話
-- COTOHAと連携してみた
-- コピー機が紙詰まり
--- プリンタの状態はクラウドにつながってて把握されている
--- 今プリンタの前にいることはHololensでわかる
--- ここを直してください、と3Dモデルで表示
* 帰ってきた インフラ野郎 Azure チーム 〜Azure データセンター テクノロジー解体新書 2018春〜 [#eb2e1568]
- 非公開情報は出せませんが、論文でこっそり公開してるようなのをいろいろ話します
- Azureなう
-- 自前で海底ケーブル引いてます
-- Skylakeの48コアが主流
-- リスク = 発生確率 * 影響の大きさ
--- これまでは後者、広域災害とかを重視してた
--- これからは前者、データセンターレベルの障害も重視。意外とこちらが多かった
-- IP anycastで、すべてのゾーンにロードバランサを持ってる
- アベイラビリティゾーンの設計は効率重視型・都市適応型がある
-- 都市適応型でも遅延は2ms程度に抑えている
- Azure Cloud Shell
-- ユーザごとにdockerでubuntuコンテナを生成
-- 20分無操作で破棄される
-- $HOMEの下はAzure Filesに永続化される
-- よく使うツールをかなり網羅している
-- Azureの認証周りが設定済み
-- Powershell Core on Linuxも今度出る?
- ライブマイグレーション
-- インスタンスを動かしたまま引っ越す
-- 故障が予測できた場合や、メンテナンス用にサーバを空ける用途にも使われる
- Azure OS
-- Windows Serverのサブセット
-- ネイティブコードのみ、ドライバなどもない
-- できるだけ再起動したくない
-- ライブパッチングで、最大30秒程度の停止で済む
- ユーザーレベルではAVSetsをおすすめ
-- AVSets内の複数のVMは同時にメンテナンスされない(Update Domain)
-- メンテナンス情報が取れる(Instance Metadata)
- PaaSなら上記は勝手にやってくれる
- リージョン間ネットワーク
-- Azureサービス間の通信はインターネットに出ない
- SmartNIC
-- FPGAを活用したNIC (Accelerated Networking)
-- 障害はストレージが多いが、ストレージにアクセスするネットワークの障害が多い
-- そこを安定させる目的もある
- DPDK
-- アプリからNICに直接アクセス
-- VM間のレイテンシが数マイクロ秒になる
- 同一リージョン内 数百us, 28.6Gbps
- 東京・大阪間 数ms, 6Gbps
- (高いインスタンスを使ってるが、デフォルト設定)
- Terraform
-- マルチクラウド対応のプロビジョニングツール
- Azure SDK for Goも拡充中。Goおすすめ