Microsoft Tech Summit 2018 Day3 #mstsjp18

hawaku.hateblo.jp

Day3最終日です。

これから始めるコンテナーの基本と始め方 #CI03

最終日はコンテナーセッションからスタート。

  • 分散システム設計の本が無料で読める
  • ACRのいいところは複数リージョンに単一レジストリで管理できる
  • AKSの事例はIgniteで公開されているので見るいいよ
  • AKSのサイトは熱い。アーキテクチャについてものってる。
  • コンテナーするのに一番のおすすめはWeb App for Container
  • Web App for Containerで足りないならマネージド率が高いものから選択する -> AKS
  • ただしK8sは進化が早いのでついて行く覚悟があるか
  • さらにCNCF Landscapeにはこんなにコンテナー関係があるから大変だよ
  • Web App for Container + Azure Repos + Azure Piplelineデモ
  • Azure Cloud Shellはブラウザ内で黒い画面がつかえてエディタもつかえる
  • VS Code拡張機能VS CodeからCloud Shellを呼び出せる
  • Igniteのコンテナー関係動画を99個全部見て、その中から見るべき動画を厳選しました! (資料公開後に確認する)
  • コンテナー技術は海外ではスタンダードなもの。まずはアプリケーションの近代化から始め、必要性を考えて複雑なものへ(Web App for Container -> AKS

Azureにおけるコンテナー&サーバーレステクノロジの選択肢と選定ポイント #AD08

Azureにおけるコンテナーサービスの使いどころとアプリケションモダナイズ事例の2本立て。冒頭の宣言通りスライド多く内容盛りだくさんでした。

  • Legacy Apps -> Internet Apps -> Cloud Appsに時代にあわせて、アプリもモノリスからマイクロサービスへ
  • コンテナー、サーバーレス、マイクロサービスはクラウドネイティブを支える技術
  • 分散アーキテクチャで必要になってくるのがオーケストレーション。CaaS
  • K8sになり標準化でうまれてくるエコシステム
  • コンテナーでやるのかFaaSなのか、IaaSでいくかを考える前に、まずは提供したい価値と優先度を明確化する
  • クラウドを最大限利用するにはアプリシエイトのモダナイズ
  • では選択したアーキテクチャがOverKill(必要以上に複雑になってないか)
  • 複雑なアーキテクチャになると運用負荷が高まりNoOpsという考え方が必要となる
  • PaaSやサーバーレスはそのリソースを使うことがNoOpsの思想を持っている
  • ACSの利用は非推奨なので、DC/OSやSwarmを使いたい場合はマーケットプレイスからの利用を推奨

事例

  • 当時はモダンだったアーキテクチャも機能追加、不具合対応、放置されたリファクタリング、複雑になった機能構成、自動テスト化、パフォーマンス懸念、セキュリティなど問題が。
  • その分保守コストがかかる
  • モダナイズプロジェクト発足して疎結合で複数チームがスピードを落とさず、最新技術を使えるようにしていく -> マイクロサービスが適してる
  • まずはDBは変えずにアプリケーションの一部をモダナイズ化
  • HackFestを実施した(きりん+マイクロソフト+オルターブース3社にて)
  • HackFestでできたもの。Web App + AKS + OSBA + Azure Database for MySQL + Azure DevOps + ACR

日本企業のためのハイブリッドクラウドガイドライン #CI05

今日も美味しいランチを頂きながら。もぐもくしてたらすごい取り組みをされていた。

AKS管理のベストプラクティス #CI32

実際のAKS開発者とMonitor開発者の話が聞けるとかすごいですわ。試される英語力😇同時通訳さんありがとうありがとう。

クラウドネイティブガバナンスの実現〜Azureガバナンスサービス概要〜 #CI30

ガバナンス機能この辺しっかりやっておかないと。Policy機能をうまく使えばリソース構築の手間が楽になりそうな予感。

  • Azureガバナンスをまもるプラットフォーム
    • Policy
    • Blueprints
    • Resource Graph
    • Management Group
    • Cost Management
  • Buleprintsはポリシーを再定義可能な形で定義する
  • Resouce Graphはコマンドでおこなう。利用にはAZコマンドのエクステンションが必要
  • Resouce Graphはリソースの個数や状態をカウントしたりできる
  • まずはドキュメントをみて第一歩を。
  • ガバナンス機能はそんなに料金がかからないので試して欲しい。ただし本番では試さないで

インフラエンジニアエボリューション〜激変するITインフラ技術者像、キャリアとスキルを考える〜 #SP04

インフラエンジニアならハンカチなしでは聞けないセッション。エンジニアだけでなく人事の方、経営の方にも見て頂きたいな。HR界隈が騒がしくなりそうだけどw

  • Tech Summit No.1のエモさ
  • 歴史秘話ヒストリア「トール・マカベッチ」
  • コンテナー(物理)のパワーワード
  • Bashをいまさらとおもうことなかれ
  • キャリア・スキル・働き方に悩んだら、すぐ見られる手元に置いておきたいバイブル
  • 担当されたインフラ野郎、NoOpsの3セッションの集大成感

www.slideshare.net

コストと脅威を同時に削減!AzureリソースをAzure ADで効率的に守るためのノウハウ集 #CI01

Tech Summitの最後の〆はAzure ADへ。

  • Security DevOpsはサブスクリプションを安全に保つ
  • 安全である状態を維持する
    • Azure ADによる認証と認可
    • RBAC
    • モニター
    • ガバナンス
  • 世界の中心にはAzure ADがある
  • Azure ADの管理には2つの方向がある
  • Azure SQL ServerはAzure AD管理下における。さらに条件付きアクセスで特定アプリ、デバイス、ネットワークを元に制限可
  • SQL Database動的データマスク
  • アプリをAzure ADに登録する -> ClientIDとClientSecretが払い出される -> 流出するのが怖い
  • KeyVaultで管理するにはKeyVaultへのアクセスにAzure AD認可が必要で堂々巡り
  • App Settingはよい方法だが運用的にどうか
  • 人が介在しない仕組みが必要
  • Managed Identity
    • AWS IAM Roleと同じ感じ
  • VMのManaged IDを有効にするとサービスプリンシパルとして登録されるのでRBACによる管理の対象となる
  • Azure Instance Metadata Service (IMSD)
  • Azure Functionも同じで特定の環境変数でとれるようになる
  • Managed IDはシステム割り当てマネージドIDとユーザー割り当てマネージドIDの2つがあるが、現時点ではシステム割り当てがよい
  • Azure AD認証をサポートしてない場合はAzure Resource Manager経由でアクセスして、アクセスキーをKeyVault管理しKeyVaultから取得するようにする
  • CI/CDのライフサイクルにBuleprintsで強制ができる
  • Managed IDやPolicy、BuleprintsはNoOpsの一つ
  • https://azsk.azurewebsites.net
  • https://docs.microsoft.com/ja-jp/azure/security/
  • Managed IDのローカル環境とAzure環境でプロファイルなどで切り替える。ローカル環境もなにか謎技術でManaged ID出来るようになったらいいな
  • 複数台VMをManaged IDで管理したい場合はコマンドで行うか、Azure Policyを使うとよい

Appendex

The Illustrated Children's Guide to Kubernetes

f:id:hawa9:20181109013605j:plain

セッションもさることながら、いろいろな人に出会える現地にいくのは楽しいですね!