雲のメモ帳

猫とクラウドと旅行が好きなインフラエンジニアです。 日々の調べたことや興味が持ったことをこのブログにアウトプットします。

AWSエンジニアがAzureを勉強するために使った資料まとめ

AWSエンジニアがAzureを1から勉強したので、参考ドキュメントとAzureサービス概要を書きました。Azureサービス概要にはAWSサービスに置き換えるとどのサービスが当てはまるかについても言及しています。

目次

1. 参考ドキュメント

AWS サービスと Azure サービスの比較 - Azure Architecture Center | Microsoft Docs

  • MSが出しているAWSとAzureの対応表。AWSエンジニアだとまずはここから始めると理解進むと思います。

AWS プロフェッショナルのための Azure - Azure Architecture Center | Microsoft Docs

  • MSがAWSとAzureの際を丁寧に解説してくれてます。 アーキテクチャのイメージができていなかったので、参考になりました。

Azure アーキテクチャ センター - Azure Architecture Center | Microsoft Docs

  • アーキテクト集。AWSでいうAWS Well-Architectedな感じ。一通り、さらっと読む。

Microsoft Azure実践ガイド

  • Azure関連の本で一番よかった。サービスの概要 => 実際に手を動かしてみる感じ。
  • 最終章に、代表的なアーキテクトの例と構築手順があって、実戦向きな内容。
  • サービスの作成手順が書いてあるので、実際にAzure契約してやってみるのが良い
      * 注)Azureの無料期間は1ヶ月なので、契約して1ヶ月以内にやると無料で体験できる。無料期間過ぎても少額のサービスを利用しているのでそこまでお金かからないですが。

実戦ガイド一通り読んだ後に、Azure アーキテクチャ センター を見返してみるとスっと内容が入ってくる感じがあった。
多分上記ドキュメントで基礎部分はできると思うので、後は実際にサービスの細かい部分について見ていけばAzureエンジニアとしても戦っていけそう。

2. Azureサービス概要

ネットワーク

  • 仮想ネットワーク(VNet)
    • AWS : VPC
    • VNetピアリング
      • AWS : VPCピアリング
  • サブネット
    • AWS : サブネット
  • ユーザー定義ルート(UDR)
    • AWS : ルートテーブル
  • インターネットアクセス
    • AWS : NATGateway
    • 仮想マシンは、GIP持っていない場合でも外部接続可能(Azure 側で自動でSNATしてくれる)。AWSだとNAT Gateway等のNATサービスを用意しないとプライベートサブネットからは、インターネットへ接続不可。
  • 負荷分散
    • Traffic Manager : DNSベースのトラフィック分散サービス
      • AWS : Route53 ルーティングポリシー
    • LoadBalancer : L4バランシング
      • AWS : CLB、NLB
      • 静的パブリックIPあり
    • Application Gateway : L7バランシング
      • AWS : ALB
      • 静的パブリックIPなし
      • WAF機能あり
  • DNS
    • Aure DNS : DNSサービス
      • AWS : Route53
  • ネットワーク監視
    • Network Watcher : ネットワークリソースの監視
      • AWS : CloudWatch、VPCフローログ
      • VPN診断
      • パケットキャプチャ
  • セキュリティ
    • NSG : ネットワークアクセス制御
      • AWS : NACL
      • サブネットとNICにアタッチ可能
      • ステートレス
      • AzureMonitor : NSGのイベントログ
        • AWS : VPCフローログ
    • SecurityCenter
      • AWS : GuardDuty
      • 防御、検知、可視化
      • IPS、IDS機能
      • サードパーティの製品との連携も可能
        • Fortinet、Barracuda
      • Endpoint Protection : セキュリティソフト
        • AWS : AWS標準のものはなさそう
  • VPN
    • VPNGateway : Azure側のVPNゲートウェイ
      • AWS : VGW
      • AWSと違い冗長化の考慮やIPの確保が必要
    • ExpressRoute : 専用線
      • AWS : DirectConnect

仮想マシン

  • 仮想マシン
    • AWS : EC2
    • 可用性セット : 仮想マシン障害時の復旧
      • AWS :オートリカバリー
    • マシンログ : ログインログ、スクリーンショット
      • AWS : AWSコンソールスクリーンショット、インスタンスコンソール出力
    • 負荷監視 : CPU使用率
      • AWS : CloudWatch メトリクス
    • シャットダウン
      • 停止 : OSシャットダウン、一時ディスクデータ継続、仮想マシンの課金継続
      • 停止済み(割り当て解除) : 仮想マシンの課金停止、一時ディスクデータ削除
        • AWS: AWSでは、OSからのシャットダウンでも、インスタンス停止でもAzureの停止済み(割り当て解除)と同じ
    • バックアップ
      • AzureBackup : スケジュールとVSS対応
        • AWS : スナップショット、AMI

PaaS

  • AzureAppService
    • WebApp : WEBサイト、WEBアプリケーション基盤
      • AWS : ElasticBeanStalk
      • Kudu : WebApp内でのログを確認できる。これは便利そう。
    • Mobile Apps : モバイルアプリケーション基盤
      • AWS : Mobile Hub
    • API Apps : APIの作成
      • AWS : APIGateway?
    • Logic Apps : ワークフロー
      • AWS : StepFunction

権限制御

  • Azure AD : ID管理、SSO
    • AWS : IAM(ID管理)
    • AWS : AWS SSO(SSO)
  • RBAC : ユーザー + グループ権限制御
    • AWS : IAMポリシー + IAMユーザー、IAMグループ
  • リソースポリシー : サブスクリプション + リソースグループ権限制御
    • AWS : IAMポリシー + IAMロール? 概念が違うから正確ではないかも。各リソースをグルーピングして、そのグルーピングを使って権限管理するイメージ。
  • サービスプリンシパル : APIによるリソース操作
    • AWS : IAMクレデンシャル

ストレージ

  • Azure Storage
    • Blob : 非構造化オブジェクトデータ
      • AWS : S3、EBS
      • コンテナ : S3バケット/オブジェクト
      • ブロックBLOB : ファイルをブロックとして構成
      • ページBLOB : ランダムアクセス向き
        • AWS : EBS
        • Azure Disk Encryption
          • AWS : KMS
      • 追加BLOB : ブロックの追加のみ
      • SSE
        • S3サーバーサイド暗号化
    • Table : NoSQL
      • AWS : DynamoDB
    • Queue : キュー
      • AWS : SQS
    • File : SMB、HTTP
      • AWS : EFS
  • クライアントツール
    • MS Azure Storage Explorer
      • 公式のCyberduck的なやつ
    • Visual Studio Server Explorer
  • アクセス管理
    • ストレージアカウントキー : ストレージアカウント上の全てのデータにアクセス可能
    • Shared Access Signature(SAS) : 接続できる領域を制御できる
  • Managed Disk
    • AWS : EBS
    • 今はAzureで仮想マシン起動するならこれ使う。
    • VHDエクスポート可
    • スナップショットは増分課金ではなく、取得時のディスク容量
    • 制限はあるけど、非管理ディスクからManaged Diskに変換可能

データストア

  • SQLDatabase
    • AWS : RDS
    • 性能調査のツールがある
      • DTU Calculator
    • アクティブジオレプリケーション : リージョン間のDBレプリケーション(非同期)
      • AWS : RDS マルチリージョンレプリケーション
    • 認証
      • SQL認証
      • AzureAD認証
    • FW
      • サーバーレベル : 全DBに適用
      • データベースレベル : DBごと
    • Query Performance Insight : クエリの実行時間とか
      • AWS : RDS拡張モニタリング
  • Azure SQL Data Warehouse : データウェアハウス
    • AWS : Redshift
    • FW : SQLDBと同じ
      • サーバーレベル : 全DBに適用
      • データベースレベル : DBごと
  • Azure Cosmos DB: グローバルレベルで利用可能なDB。世界的に展開しているサービスで利用。
    • AWS : 対応しているサービスなし?RDSのグローバルバージョンみたいな感じかな。 Dynamo DB グローバルテーブル
  • Azure Data Lake Store : データレイク
    • AWS : S3
    • データ無制限
    • HadoopなどのOSSに対応
    • 分析サービス
      • Azure HDInsight(Hive Storm Spark)
      • Azure Data Lake Analytics Service

環境作成

  • ARMテンプレート
    • AWS : Cfn
    • デプロイ方法
      • VisualStudio
      • VSCode
      • PowerShell、AzureCLI