Azure:Azure管理者資格に向けての勉強メモ~Azure基本用語をまとめました~
]Azureの認定資格の一つである、Microsoft Azure Administrator(AZ-103、AZ-104)に向けて、基本用語っぽい単語とその意味をまとめていきます。 随時更新中になります。
- Azureの購入形態
- サポート種別
- エリアの概念
- 価格オプション
- リソースの管理
- Iaasモデル
- ネットワーク
- ストレージ
- Azure Virtual Machines
- コンテナ基盤
- データベース
- IoT関連
- 分析基盤
- Azure Cognitive Services
- アプリケーション基盤/開発基盤
- 制御・監視・認証
- そのほか
- 参考サイト
Azureの購入形態
- Azure 無料 アカウント
- 従 量 課金 制 サブスクリプション
- Azureインオープンプラン
- 11200円単位で購入できるプリペイド式ライセンス(追加購入可能)
- 有効期限は12か月
- エンタープライズ契約(EA)
- CSPからの購入
- Visual Studio サブスクリプション
- Azure含むサービスへの年月単位で購入できるサブスクリプション契約
- プランに応じてAzureクレジットが提供され、開発/テスト用途に使用可能
サポート種別
- 基本(無料)
- 開発者($29/月 )
- サードパーティ製ソフトウェア(相互運用性)のサポート
- 構成のガイダンスとトラブルシューティング
- 営業時間中のメールによるテクニカルサポート問い合わせ
- 重大度に対する応答時間
- 重大度C(事業に軽微影響)向けに8営業時間以内
- 標準($100/月)
- 24 時間年中無休のメールと電話によるテクニカル サポート問い合わせ
- 重大度に対する応答時間
- 重大度C(事業に軽微影響)向けに8営業時間以内の応答
- 重大度B(事業に部分影響)向けに4営業時間以内の応答
- 重大度A(事業に重大影響)向けに1営業時間以内の応答
- プロフェッショナルダイレクト($1,000/月)
- プレミア
- 専属 の テクニカルアカウントマネージャー( TAM)
エリアの概念
- ジオ
- 2つ以上のリージョンを含む
- ジオ内のリージョンではペアとなる(一部を除く)
- リージョン
- 1つのジオに所属
- 一部リージョンでは3つ以上のAZゾーンを含む
- リージョンペア
- 同一ジオ内の特定のリージョンのペア(一部リージョンを除く)
- 求められる耐障害性、高可用性を求められる基盤となる
- ペアで同時にメンテナンスが行われないことが保証されている
- AZゾーン
- 1つのリージョンに所属
- 1つ以上のデータセンターを含む
- 1部のリージョンでのみサポートされる
価格オプション
- エンタープライズ 契約( EA)
- 事前に利用料金をコミットすることによる割引
- 期間は1年間
- Azure Reserved VM Instances(予約インスタンス、RI)
- Azure Virtual Machinesに対する利用をコミットすることによる割引
- 期間は1年間、または3年間
- 予約容量
- PaaSサービスに対する利用をコミットすることによる割引
- 対象はAzure SQL Database(仮想コアモデル)、Azure Cosmos DB、AzureSynapse Analytics、Azure Cashe for Redis
- 期間は1年間、または3年間
- Azureハイブリッド特典
- オンプレミスのライセンスを流用することによる割引
- 対象はAzure Virtual Machines、Azure SQL Database(仮想コアモデル)
- Azure 開発/テスト価格
- 開発/テストでの使用に限定
- 対象はWindows Virtual Machines、BizTalk Virtual Machines (Enterprise、Standard) 、Azure SQL Database、SQL Server Virtual Machines (Enterprise、Standard、Web) 、Logic Apps エンタープライズ コネクション、App Service(Basic と Standard) 、Cloud Services 、HDInsight
リソースの管理
リソースグループ
- リソースを論理的にまとめたグループ
- リソースグループを削除すると、リソースグループ内のすべてのリソースも削除される
- ダウンタイムなく内部リソースのグループ移動が可能
- 依存関係にあるリソースは同時に移動する必要がある
- ロック機能・・・リソースグループ(およびリソース)の「削除」または「変更・削除」を防止できる
タグ
- リソースに対してカスタムな情報を付与できる
- 1リソースに最大50個設定可能
Azure Resource Manager (ARM) テンプレート
- デプロイが必要なリソースを定義したJSONファイル
- テンプレートをデプロイすることで、テンプレートに記述されたリソースがデプロイされる
- テンプレートセクション
- parameters・・・テンプレート実行時に読み込みたい値
- varlables・・・テンプレートファイル内で使われる変数
- functions・・・テンプレート内で繰り返し使われる処理の塊
- resources・・・デプロイするリソースを定義
- dependsOnにより依存関係を表現
- 作成済みのリソースから定義をエクスポート可能
- テンプレートセクション
Iaasモデル
- クラシックモデル(V1)
- 別名ASM(Azure Service Manager)
- GUIはクラシックポータル中心での提供
- Resource Managerモデル(V2)
ネットワーク
VNet(仮想ネットワーク)
- 使用するネットワーク空間全体(IPアドレス)を定義
- アドレス範囲の追加または削除が可能
- サブネット・・・VNetのネットワーク空間(IPアドレス)を分割
- サービスエンドポイント・・・AzureサービスへのアクセスをVNet内部に限定することが可能
VNetピアリング
- 同一リージョン内のVNet間を接続
- ピアリングを行う両方のVNetにて接続の作成が必要
- ピアリング設定中にVNetのIPアドレス範囲は変更不可
- 直接ピアリングしたVNet同士のみが通信が可能となる
- グローバルVNetピアリング・・・異なるリージョンのVNet間を接続可能になる
VNet間接続
VPNゲートウェイ
- 暗号化されたトラフィックを送受信するためのゲートウェイ
- 主な使用方法はサイト対サイト(Azure VNet - オンプレミスNW)、ポイント対サイト(Azure VNet - デバイス)、ネットワーク対ネットワーク(Azure VNet - Azure VNet)
- 通常のサブネットと異なる「ゲートウェイサブネット」が必要
- 2種類のVPNタイプ
- VPN
- Express Route
- 2種類のVPNタイプ
- ルートベース
- IKEv2をサポート、推奨
- 各トンネル間で暗号化する必要があるパケットをワイルドカードにより指定
- 動的ルーティングを使用できる
- ポリシーベース
- IKEv1をサポート、非推奨
- 各トンネル間で暗号化する必要があるパケットの IP アドレスを静的に指定
- 静的ルーティングを使用できる
- ルートベース
- 通信要件に応じたSKUを設定
- VPN接続設定
- 指定した接続に対する共有キーを作成する
- VNet対VNet、サイト対サイト、Express Routeを指定可能
ローカルネットワークゲートウェイ
Azure Express Route
- 専用線サービス
NSG(ネットワークセキュリティグループ)
- VNet内のトラフィックをフィルタリングすることができる
- サブネット、NICに対して関連付けして適用
- セキュリティ規則を受信/送信方向個別に設定して使用する
- 既定のルールが一式含まれている(暗黙のDeny含む 優先度65500)
- サービスタグ・・・Azureが管理している特定のIPアドレスのグループ
- アプリケーション セキュリティ グループ
- 特定のアプリケーションで使用されるリソースのネットワークセキュリティグループ
- ネットワークインターフェースをグループ化し、NSG内で送信元またはあて先として指定可能となる
Azure DDoS Protection Basic
- 内部的なL4レイヤまでのDDoS攻撃を検知し、緩和する仕組み
- 共有ネットワーク全体に適用
ロードバランサ―
Azure Load Balancer
- リージョンに配置
- L4ロードバランサ―
- ソース・あて先×IPアドレス・ポートの4項目及びプロトコルを利用
- 2種類のSKU・・・Basic/Standard
- バックエンドプール・・・トラフィックを分散するあて先グループ(仮想マシン、スケールセット)
- 正常性プローブ
- バックエンドプールの状態監視設定
- プロトコル、ポートを指定
- セッション永続化・・・同一セッションのリクエストを同一クライアントへ分散する(クライアントIPまたはクライアントIPとプロトコルを指定可能)
Azure Application Gateway
- L7ロードバランサ―(基本的な特徴はALBと同様)
- リスナー・・・プロトコル、ポート、ホスト、IP アドレスの組み合わせにより構成されるトラフィックの到着先
- ルーティング規則・・・リスナーとバックエンドプールの紐づけ
- Cookieベースのスティッキー セッション
- SSLオフロード
- パス/URLベースのコンテンツルーティング
- WAF機能も利用可能
- スケーリングは手動と自動を設定可能、インスタンスの最大と最小を制限できる
- SKU
- レベル・・・Standard、WAF
- サイズ・・・Small,Medium,Large
Azure Traffic Manager
DNS
Azure DNS
既定の内部DNS
- 名前解決対象は同一VNetおよびインターネット上の公開ホスト
- 任意のレコードの追加は不可
ストレージ
ストレージアカウント
- ストレージサービスを使うための基本設定
- 作成時の指定オプション
- インターネット上で一意の名前を設定
- アカウントの種類
- 汎用v1・・・すべてのストレージの種類(Blob、Files、Table、Queue)をサポートしているが、 すべての機能はサポートしていない
- 汎用v2・・・すべてのストレージの種類とすべての機能をサポート
- Blobストレージ・・・Block Blob、Append Blobを利用できる
- ファイルストレージ・・・Filesをサポート
- パフォーマンス
- レプリケーション
- LRS(ローカル冗長ストレージ)・・・リージョン内の同一データセンターで3つのレプリカ
- ZRS(ゾーン冗長ストレージ)・・・リージョン内の3つの可用性ゾーン(AZ)にわたって計3つのレプリカ
- GRS(地理冗長ストレージ)・・・ペアリージョンにて3つずつ、合計6つのレプリカ、フェールオーバー時はアクセス不可
- RA-GRS(読み取りアクセス地理冗長ストレージ)・・・ペアリージョンにて3つずつ、合計6つのレプリカ、フェールオーバー時の読み取りアクセス可能
- 利用可能ストレージサービス
バックアップサービス
Recovery Servicesコンテナ―
- バックアップデータを格納する入れ物
- 同一リージョンのデータしかバックアップ取得できない
Azure Backup
- クラウド・オンプレミスのデータをバックアップし、リストアすることを可能とするサービス
- スナップショット
- MARS(Microsoft Azure Recovery Services)・・・オンプレミス向けのバックアップのために必要なエージェント
- バックアップポリシー
- バックアップの取得タイミングと周期・頻度および保持期間を指定可能
- デフォルトでは1日1回、30日間保持、保持期間は最大99年
- 復元オプション
- ファイル/フォルダーレベルの復旧も可能
Azure Site Recovery
- データの安全な保護及び短時間での災害復旧を可能にするサービス
- 自動で仮想マシンのバックアップを開始し、レプリカのマネージドディスクにデータを保持
Azure Virtual Machines
- IaaS環境を提供
- サイズの変更には再起動が必要
- 3種類のディスクを接続可能
- OSディスク
- 一時ディスク
- データディスク(オプション)
- 監視・診断機能の有効化・・・ストレージサービスのBlobとTableへ情報を蓄積する
- 可用性セット
- スケールセット
コンテナ基盤
Azure Container Instances
- コンテナ―実行サービス
- コンテナグループ・・・同じホストマシンで実行されるコンテナの集合
Azure Kubernetes Service
- Kubernetesクラスターをデプロイ
- AKS自体は無料であり、AKSのために動いているノードのリソースに基づいて課金
Azure Service Fabric
- マイクロサービスプラットフォームの構築・運用を可能とするサービス
- オーケストレーション、アプリケーションやコンテナのパッケージング、デプロイ、運用機能を提供
- Azure のインフラストラクチャおよび多様な Microsoft サービスを支えるOSS
- Skype for Business、Intune、Azure Event Hubs、Azure Data Factory、Azure Cosmos DB、Dynamics 365、Cortana
- Azure SQL Database、Azure SQL Data Warehouse、Azure Database for MySQL/PostgreSQL
データベース
Azure SQL Database
- データベース最大容量は4TB
- パフォーマンスに基づく購入モデル
- DTUモデル
- CPU使用率、メモリ使用量、ディスクI/Oを組み合わせた値
- 大きい段階にBasic、Standard、Premiumがある
- 仮想コアモデル
- コンピューティング/メモリ/ストレージを独立してスケール可能な新しいモデル
- 大きい段階にGeneral Purpose、Business Critical、Hyper Scaleがある
- DTUモデル
- 複数のセカンダリノードに対するレプリケーション(Premium or Business Critical)
- 自動バックアップ
- 管理ツール
- Azureポータル、Visual Studio
- SQL Server Management Studio、Azure Data Studio
- エラスティックプール・・・プール内の複数のDBがリソースを共有
- Managed Instance・・・オンプレミスのSQL Server互換性100%のDBインスタンス
- アクセスには、Azure内部からはAzure接続の有効化、外部からはDB/SVレベルのFWにおける許可設定が必要
Azure SQL Data Warehouse
- 並列分散データベースサービス
- 制御ノード、コンピューティングノード、ストレージに分かれる
- データベース最大容量は240TB、1TBごとに自動スケール
- パフォーマンスはDWU単位で、DWUを変更すると実行中のクエリは停止する
- データを維持しての一時停止可能
Azure Database for MySQL/PostgreSQL
- 複数の仮想マシンでクラスター構成がとられた基盤上のDB
- 自動バックアップ(7~35日間の保存)
- パファーマンスベースのプラン
- Basic・・・仮想コア1~2、メモリ2GB、ストレージは5GB~1TBのStandard Storage
- 汎用・・・仮想コア2~32、メモリ5GB、ストレージは5GB~4TBのPremium Storage
- メモリ最適化・・・仮想コア2~16、メモリ10GB、ストレージは5GB~4TBのPremium Storage
- 基盤となるサーバに対する課金(データベース単位ではない)
Azure Cosmos DB
- NoSQLデータベースサービス
- 異なるデータモデルの5つのデータベースAPIを提供
- パフォーマンスはRU単位
- 1RUは1KBのドキュメントをID指定で取得した際のコストに相当
- 400RUから、100/秒単位で指定でき、変更可能
- 上限は10000RU/秒または10GB
- RUと容量に基づいて自動でスケールアウト
- パーティション分割を有効化可能
- 有効化時はRUと容量の上限が無制限
- マルチマスター書き込み機能もあり
- RUに基づいた時間単位+格納データ量に基づいて課金
- 地理レプリケーションを構成可能(レプリケーション先に上限なし)
- 書き込みリージョンと読み取りリージョンに分類
- 書き込みリージョンの更新内容の浸透は非同期
- 優先順位を指定して、レイテンシを最小化できる
- 3種類の特別なSLA・・・対RUで指定されたスループット、整合性レベル、レイテンシ
- 5つの整合性レベル・・・強い整合性、有界整合性制約、セッション、一貫性のあるプレフィックス、結果整合性
IoT関連
Azure IoTソリューションアクセラレータ
- 複数のIoTのPaaSサービスおよびコード資産を使用した特定のシナリオ向けのアプリケーション
- OSSなのでカスタマイズ可能
Azure IoT Central
Azure IoT Hub
- IoTデバイスおよびIoTアプリケーションサーバ間のメッセージハブ
- 信頼性が高く、セキュアな通信を提供
Azure IoT Edge
- 処理をエッジデバイスにて実行できるようにするソリューション
- 処理の内容をDockerコンテナ(IoT Edge モジュール)としてエッジ側デバイスにデプロイ
- カスタムコード及びAzure Functions/Azure Stream Analytics/Azure Machine Learningサービスによる処理を実行可能
分析基盤
Azure Data Factory
- ETL (抽出 - 変換 - 読み込み)、ELT (抽出 - 読み込み - 変換)、データ統合等を行うデータ パイプラインクラウド サービス
- クラウドの Spark クラスター(Azure HDInsight)を使用して処理
- パイプライン
- 1 つのタスクを実行するための複数のアクティビティから構成される論理的なグループ
- データ ファクトリには、1 つまたは複数のパイプラインを設定可能
- データフローのマッピング
- データ変換ロジックのグラフを作成して管理
- 再利用可能なデータ変換ルーチンのライブラリを構築し、パイプラインから実行可能
- アクティビティ
- パイプライン内の処理ステップで、3種類に分類(データ移動アクティビティ、データ変換アクティビティ、制御アクティビティ)
- データセット
- データ ストア内のデータ構造
- リンクされたサービス
- 外部リソース(データストアまたはコンピューティングリソース)に接続するために必要な接続情報
- トリガー
- パイプラインの実行をいつ開始するかの定義
- 制御フロー
- パイプラインアクティビティのオーケストレーション
- シーケンスに従うアクティビティの連鎖、分岐、パイプライン レベルでのパラメーターの定義、オンデマンドかトリガーからパイプラインが呼び出される際の引数の受け渡しを含む
- 変数
- パイプライン内での一時的な値の格納、アクティビティ間で値を受渡に使用
Azure Databricks
- Sparkベースの分析プラットフォーム
- クラスターを動的にスケールアップ/ダウン可能
- データ領域としてAzure Blob Storageを使用
Azure HDInsight
リアルタイムデータ処理
Azure Event Hubs
- スケーラブルなパブリッシュ/サブスクライブサービスの提供
- パーティション
- 事前に数を設定する、分散処理の単位
- イベントごとに異なるパーティションにて処理
- 7日間データを保持可能
- スループットユニット
- 容量の単位(1MB/秒または1000イベント/秒が上限)
- 複数の入力元および出力先を指定して処理可能
Azure Stream Analytics
- SQLライクなクエリ言語でサブスクライブ処理を記述
- ストリーミングユニットとして1MB/秒単位でスループットを割当
- 連携先はAzure Event Hubs/Azure SQL Database/Azure Data Warehouse/Azure Cosmos DB/Azure Blob Storage
Azure Machine Learning
- 機械学習モデルの構築・訓練・デプロイを行うサービス
Azure Machine Learning Studio
- データの入出力・クレンジング・アルゴリズムの実行をGIUでブラウザー上にて実施可能
- 各処理のブロックをつなげていくことで処理のパイプラインを構築する
- RやPythonの自作スクリプトも実行可能
- スケーリングやGPUサポートに課題あり
Azure Machine Learning サービス
Azure Cognitive Services
- 資格・音声・言語処理の機能を提供するAPIサービス
- API群は5つのカテゴリに大別される
- Vision
- Computer Vision・・・画像の分析
- Face・・・画像における顔の検出・認証、グループ化
- Content Moderator・・・不適切なコンテンツを自動検出
- Custome Vision・・・カスタマイズ可能な画像認識モデル
- Video Indexer・・・ビデオ内会話のテキスト化、キーワードちゅしゅつ、タグ付け
- Speech
- Speech Services・・・音声認識・合成・翻訳
- Speaker Recognition・・・話者識別・音声認証
- Language
- Bing Spell Check・・・スペルチェック
- LUIS(Language Understanding)・・・文章に対する意図・キーワード抽出
- Text Analytics・・・文章内の感情・トピック分析
- Translator Text・・・機械翻訳
- Knowledge
- QnA Maker・・・Q&Aマッチング
- Search
- Bing Autosuggest・・・検索候補の表示
- Bing Image Search・・・画像検索
- Bing Video Search・・・Web上の動画を検索
- Bing News Search・・・Web上のニュース記事を検索
- Bing Web Search・・・Bingでインデクシングされたドキュメントの検索
- Bing Visual Search・・・類似画像の検索
- Bing Custom Search・・・カスタマイズされた検索サービス
- Bing Entity Search・・・キーワードをもとに、近くの関連エンティティを特定
アプリケーション基盤/開発基盤
Azure App Service
- WEBアプリケーション開発に主に活用できるPaaSソリューション
- Azure Functionsの基盤となっている
- App Serviceプラン
- App Serviceの基盤で、複数のApp Serviceで共有される
- リージョン、スケールカウント、インスタンスサイズ、SKU等を定義
- 複数の価格レベルのプランがあり、使える機能が異なる
- カスタムドメインの利用(Basic以降)
- 自動スケーリング(Basic以降)
- CPU使用率やタイムスケジュールに合わせた自動スケーリングが可能
- デプロイスロット(Standard以降)
- スロット間のアプリケーションはダウンなしで交換可能
- ブルーグリーンデプロイや暖機運転後のデプロイ、デプロイ後即時ロールバック等が可能となる
- App Service Environment(Isolatedのみ)
- App Serviceプランのインフラを仮想ネットワーク上に構築し、通信制御、オンプレミスへのセキュア・高速アクセスを可能とする
- Azure DevOpsによるCI/CD可能
- 1つのスナップショットとして保存可能
Azure Logic Apps
- サービス統合・ワークフロー作成を効率的に実行するソリューション
- デザイナーを使ってGUIでワークフローを実装
- 需要にあわせて自動スケールアップ
- コネクタ・・・利用するデータとサービスへのアクセスを定義し、データへの接続・操作を支援するインターフェース
- トリガー・・・特定のイベントに基づいたワークフローの開始
- アクション・・・ワークフローにおける各ステップ
Azure Functions
- イベント駆動型のサーバーレスプレっとフォーム
- バインド・・・他Azureサービスに容易にアクセスするための機構
- トリガー・・・コードを実行するための条件
- 実行時間に基づく課金
- App Serviceプランベースでの課金も可能
- リポジトリ経由でのコードデプロイが可能
Azure DevOps
- 5つのサービスで構成された、DevOpsのプラクティス(CI/CD、アジャイル開発、アプリ監視)を実行するソリューション
- DevOps Projectという単位にて、DevOpsのためのソリューションを構築
→”サービス”を基盤とする”フレームワーク/ランタイム”を用いたアプリケーションコードのCI/CD環境が構築
制御・監視・認証
サブスクリプションロール
- サブスクリプション上のリソースに対する管理権限
- Azureにて作成済みの利用も、カスタム定義も可能
- 所有者ロール・・・他ユーザーアクセス権の制御権限と、全リソースへのフルアクセス権限
- 共同管理者・・・全リソースへのフルアクセス権限
- 閲覧者・・・全リソースへの読み取り権限
- Azure AD のユーザー、グループ、サービスプリンシパルに対して付与できる
Azure Active Directory
- クラウドベースの認証基盤
- テナント
- ユーザまたはグループに、アクセス許可を付与したロールを割り当てる
- 直接割り当て・・・ユーザに対して直接ロールを割り当て
- グループ割り当て・・・グループに対してロールを割り当てることで、所属する全ユーザにロール割り当て
- ルールベース割り当て・・・ルールベースでグループにユーザを動的に割り当てる機構を備えたグループ割り当て
- ロールの定義
- Id・・・ロールの識別子
- IsCustom・・・カスタムロールかどうかのフラグ
- Desctiption・・・説明
- Actions/NotActions
- 許可/拒否されるアクション
- Company.ProviderName/resourceType/action の形式
- DataActions/NotDataActions
- 許可/拒否されるデータ操作
- アクションがデータ操作に変わった以外はActions/NotActionsと同様
- AssignableScopes
- ロールを適用するスコープ
- 単一または複数のサブスクリプション、特定のリソースグループ、特定のリソースといった設定が可能
- インターネット標準に基づく業界標準のプロトコル(Open ID Connect、SAML、WS-Federation等)を使用
- 課金プランはFree、Basic、Premiumu(P1,P2)、Office365付属
- 必ず管理者を作成して運用する必要がある
- 管理の方法はAzure portal(GUI)、PowerShell(スクリプト)、Azure AD Graph(API)
- フェデレーションにおいては、自身が認証処理を行うパターンも、外部に認証要求を依頼するパターンも可能
- OpenID ConnectとのIDフェデレーション
- Azure ADへの「アプリの登録」
- 認証を挟みたいアプリの種類とサインオンURLを設定
- アプリケーションID=クライアントIDの自動割り当て
- ログイン時の処理
- Azure ADへの「アプリの登録」
- アプリケーション認証基盤に対する認証情報の処理
- 認証処理パターン
- Azure ADの直接参照
- Azure ADのみに認証したIDがあればOK
- アプリケーション独自の認証基盤とAzure AD間でIDフェデレーション
- 認証を行う基盤同士でIDを連携(認証したいIDが両方の基盤に含まれている必要がある)
- Azure ADの直接参照
- Azure ADのユーザ同期API
- Azure AD Graphの差分クエリ
- 初回は全ユーザ、以降は差分のユーザ情報を提供
- 認証処理パターン
- 条件付きアクセス
- コンセント
- アプリケーション間のAPI連携の認証
- 登録したアプリケーションに「必要なアクセス許可」としてアクセス先のアプリケーションAPIを追加
- Azure AD v2エンドポイント・・・Microsoft個人サービスとの連携認証が可能
- アプリケーションギャラリー・・・著名なアプリケーションが登録され、フェデレーションが簡単に完了できる
- オンプレミスActive DirectoryとのIDフェデレーション
- オンプレミスAD側でのセッティング
- フェデレーション用のAD FSを実行
- Webアプリケーションプロキシ(AD FS Proxy)を実行してAD FSと連携
- AD FS Proxyをインターネットからの接続が可能になるよう構成
- Azure AD Connet をインストールし、IDを同期
- Azure AD認証エンドポイントに対して、オンプレミスADのユーザ情報が送られたらオンプレミスADに認証要求を発行する
- オンプレミスAD側でのセッティング
- Azure AD B2B
Azure Policy
- リソースの状態を制御するポリシーの作成、割り当て、管理をすることで、一貫性のあるインフラを維持
- ポリシー定義
- イニシアチブ
- ポリシー定義のグループ
- スコープを指定して、割り当てが可能(サブスクリプション、リソースグループ等)
Azure 管理グループ
- 複数のAzure サブスクリプションをまとめて、アクセス、ポリシーの管理をするためのグループ
- 管理グループ内に管理グループを含むことも可能
Azure Blueprints
- ARMと同様にデプロイに必要な一連のリソースを定義し、一括デプロイをすることができる
Azure Monitor
- クラウド・オンプレミス環境の監視・データ収集・分析を一元的に行えるソリューション
- メトリックとログを収集し、その監視と視覚化を行う
- ログのクエリと分析
- アラートとアクションの設定
- アラートルール
- 通知を発行する基準
- 監視対象のリソースと、シグナルロジック(通知する条件)を定義
- アクショングループ
- 通知方法の設定
- Automation Runbook、Azure Functionといったタイプを指定可能
- アラートルール
Network Watcher
- 仮想ネットワークの監視を行うツール
- リージョンごとに有効化することで利用可能
- 監視ツール
- トポロジ ツール・・・Azure VNetおよびそのリソースと接続・関係がグラフィカルに表示する
- 接続モニター ツール・・・Azure リソース間およびIPアドレスまたはFQSNの接続状態を監視する
- Network Performance Monitor・・・エンドポイント間(VNet間等)における待機時間とパケット廃棄状態を追跡する
- 診断ツール
- IP フロー検証ツール
- 次ホップ ツール
- 仮想マシンから任意の宛先へのパケットの移動経路を検証できる
- セキュリティ グループ ビュー
- パケット キャプチャ ツール
- 接続のトラブルシューティング ツールとは
- VPN トラブルシューティング ツールとは
Multi-Factor Authentication
- 認証のために、2つ以上の要素を用いること
- Azure AD, Microsoft 365 Business, Office 365にて使用可能
そのほか
Azure Stack
- オンプレミスでのAzure機能を利用可能にする物理基盤ごと提供される統合サービス
- 複数のベンダから自社の物理基盤を用いたバージョンの統合サービスが提供
- Azure同様にポータル画面での管理が可能であるが、利用者用と別にStack基盤の管理者用が用意される
- 複数の課金体系
- Azureと連動した従量課金
- EAでの年間サブスクリプション契約
AWSサービスとの対応関係
- 公式ドキュメントに参考になりそうなものがあったので張っておきます。
参考サイト
- 価格の概要 - Azure 価格の仕組み | Microsoft Azure
- Azure Hybrid Benefit—ハイブリッド クラウド | Microsoft Azure
- Azure のサポート プランの比較 | Microsoft Azure
- Webアプリのセッション管理 / Azure Plugin for Eclipseのセッション アフィニティ | S/N Ratio (by SATO Naoki (Neo))
- 推奨される名前付けおよびタグ付け規則 - Cloud Adoption Framework | Microsoft Docs
- Azure Data Factory の概要 - Azure Data Factory | Microsoft Docs
- Azure Service Fabric—マイクロサービスの構築 | Microsoft Azure
- Azure Service Fabric—マイクロサービスの構築 | Microsoft Azure
- Azure DevOps Projects | Microsoft Azure
- テンプレートをデプロイする - Azure portal - Azure Resource Manager | Microsoft Docs
- Azure 仮想ネットワークを作成、変更、削除する | Microsoft Docs
- VNet 対 VNet の VPN Gateway 接続を構成する: Azure portal | Microsoft Docs
- Azure Policy でインフラストラクチャの標準を適用して監視する - Learn | Microsoft Docs
AWS:S3におけるアクセス許可設定が覚えられないので改めてまとめ
目次
デフォルト設定
まずは、デフォルトの設定を確認します。 デフォルトでは
- すべてのリソースがプライベート=作成者(AWS アカウント)のみがアクセス可能
となっています。 IAMユーザやIAMロールを使用してバケットの作成やオブジェクトのアップロードをした場合は、そのユーザ・ロールが所属するAWSアカウントが「作成者」になります。
以下は、開発者ガイドの抜粋です。
デフォルトでは、Amazon S3 のすべてのリソース — バケット、オブジェクト、関連サブリソース (lifecycle 設定や website 設定など) — はプライベートであり、リソースの所有者、すなわちそのリソースを作成した AWS アカウントだけがリソースにアクセスできます。 リソースの所有者は、アクセスポリシーを作成することにより、他のユーザーにアクセス許可を付与することもできます。
アクセス許可の設定
アクセス許可については、以下を決定します。
- ユーザ : 許可を取得するユーザー
- リソース : 許可の対象S3リソース
- アクション: 許可するアクション
つまりは、「誰に」「何を」「どうする」許可をあたえるのか、を決定するのがアクセス許可ということですね。 そしてどのようなアクセス許可を設定するのかを記述したものを「アクセスポリシー」と呼びます。
アクセスポリシー
どのようなアクセス許可を設定するのかを記述したものになります。 アクセスポリシーとしてアクセス許可の内容を記述し、それらを
- リソース(バケットやオブジェクト)
- ユーザー(IAMユーザー・グループ・ロール)
に関連付けることができます。 アクセスポリシーは関連付ける対象に応じて、リソースベースのポリシーとユーザベースのポリシーに分類されます。
リソースベースのポリシー
リソースベースのポリシーには、以下の2種類があります。
ユーザベースのポリシー
リソースベースの時と同様にまとめると、上記の通りになります。 アクセスポリシーを作成して、それをIAMユーザ/IAMグループ/IAMロールに割り当てます。基本的にはIAMを用いた各種リソースへのアクセス許可・制限にのっとったもので、特別なことはありません。
ACLによるアクセス許可
各リソース内のサブリソースとしてACLがアタッチされており、
- ユーザ
- アクション
を指定することで、アクセスコントロールを行います。上で述べたアクセス許可にて3つの内2つのみで、残りの1つリソースがありませんが、リソースは実質どのリソースにアタッチするかという時点で決定しています。
「ユーザ」および「アクション」が書かれたACLを基にして、
という動作をします。
バケットまたはオブジェクトを作成した際には、デフォルトのACLが作成されます。デフォルトのACLは、リソース所有者に対してすべてのアクションを許可する内容となっています。
「ユーザ」として選択できるのは、
のいずれかです。 また、AWSアカウントの代わりにAmazonS3の定義済みグループを許可付与者として設定することができます。AmazonS3の定義済みグループは下記の3つのいずれかになります。
- Authenticated Users グループ(すべてのAWSアカウント)
- All Users グループ (すべてのインターネットユーザ)
- Log Delivery グループ(サーバアクセスログを記録するための特殊なグループ)
「アクション」として選択できるのは、下記の5つです。ポリシーでのアクセスコントロールに比べて、ACLの場合はあまりアクションを細かく設定することはできません。
- READ
- WRITE
- READ_ACP
- WRITE_ACP
- FULL_CONTROL
各アクションの内容はこちらの「付与できるアクセス許可」にあるので、ご参照ください。
バケットポリシーによるアクセス許可
ポリシーには、
- プリンシパル(ユーザ)
- リソース
- アクション
の3つに加えて、さらに細かくアクセスをコントロールするために、
- エフェクト
- 条件
を指定します。「エフェクト」は「許可」または「拒否」の選択です。ACLは「許可」のみでしたが、ポリシーでは「拒否」も設定できます。「条件」は「使用しているソースIP」といった追加要素を指定して、アクセス許可(及び拒否)をする対象をより限定的にすることができます。
各項目の詳細は以下にまとまっているので、省略します。
全体的にポリシーのほうがACLよりも詳細なアクセスコントロールができるようです。
参考
- Amazon S3 での Identity and Access Management - Amazon Simple Storage Service
- アクセス管理の概要 - Amazon Simple Storage Service
- S3のアクセスコントロールまとめ - Qiita
- アクセスコントロールリスト (ACL) の概要 - Amazon Simple Storage Service
- Amazon S3 サーバーアクセスのログ記録 - Amazon Simple Storage Service
- Amazon S3 条件キー - Amazon Simple Storage Service
Azure:Azure Resource Manager テンプレートを作成する
Azueの認定資格の一つである、Azure管理者資格に向けて、Microsoft Learnの下記のラーニングパスを実施しています。
勉強した内容の復習用にいくつかのキーワードの意味や自分なりに理解した内容のメモを残していきます。
今回、「Azure Resource Manager テンプレートを作成する」の内容になります。 docs.microsoft.com
Azure Resource Manager とは
- クラウド リソースを管理および整理するためのインターフェイス
- クラウド リソースをデプロイするための手段
- Resource Manager を使用してリソース グループを編成すると、すべてのリソースを 1 つの操作でまとめてデプロイ、管理、削除することが可能
Resource Manager テンプレート
- JSONで記述された”宣言型のオートメ―ション”形式ファイル
宣言型のオートメーションとは、必要なリソースが "何" かということは定義しますが、それを作成する "方法" は定義しない
- デプロイに含まれるすべての Resource Manager リソースが正確に定義
- 構成要素
- 主な記述方法
- 既存のテンプレートをニーズに合わせて変更するのが一般的
- 最初のテンプレートを入手する方法
- Azure portal を用いて、既存のリソース グループ内のリソースを基にテンプレートを作成
- 自分またはチームが作成した似た目的を持つテンプレートを使用
- Azure クイック スタート テンプレートを使用
Resource Managerを使用するメリット
- 単体・繰り返しのデプロイの高速化
- Resource Manager テンプレートに基づいてデプロイが自動的に処理
- 作業内容の一貫性の向上
- 複雑なデプロイを簡略化
- 複数のリソースを依存関係に対応した、正しい順序でデプロイ可能
- リソースとその依存リソースの対応が明らかに(dependsOn要素を使用)され、依存リソースを最初に作成
- 手動タスクの削減により作業品質向上(エラーの削減)
- コード形式(テンプレートのこと)でのデプロイの表現
- ほかのソフトウェアと同様に共有、テスト、バージョン管理可能
- Git等を用いたリビジョン履歴の追跡が可能
- 再利用可能なテンプレート
- ステージングや運用といった複数のバージョンの環境を同一テンプレートで作成可能
- 環境固有の変数はテンプレート パラメーターを参照
Azure Resource Manager によるデプロイステップ
- リソース グループを作成
- 作成する必要があるすべてのリソースを保持する "リソース グループ" を作成
- Resource Manager テンプレートを作成
- テンプレートを検証して起動
- まずテンプレートが構文的に正しいことを検証
- 検証されたテンプレートをデプロイ
- デプロイを検証
- テンプレートに記述したとおりにリソースが作成されていることを確認
Azure:仮想マシンのネットワークを構成する
Azueの認定資格の一つである、Azure管理者資格に向けて、Microsoft Learnの下記のラーニングパスを実施しています。
勉強した内容の復習用にいくつかのキーワードの意味や自分なりに理解した内容のメモを残していきます。
内の「仮想マシンのネットワークを構成する」のモジュールになります。
Azure 仮想ネットワークの設定ステップ
下記のステップで作成をします。
いくつか補足を示します。
- ネットワーク名はサブスクリプション内で一意
- アドレス空間は「サブスクリプション内」と「接続する他のネットワーク内」で固有
- サブネットの作成ではサブネット名/アドレス範囲/ルーティングの設定を設定
- 分散型サービス拒否 (DDoS) 保護はBasic または Standard のいずれか
- 追加設定の定義の項目はネットワーク セキュリティ グループ/ルート テーブル
ネットワーク周りの主要要素概要
- Azure リソース間通信の確立
- 仮想ネットワーク経由
- サービス エンドポイント経由
- オンプレミス リソースとの通信
- ネットワーク トラフィックのルーティング
- ネットワーク トラフィックのフィルター処理
ネットワーク周りの機能詳細
Azure Virtual Network
- Azure 内のプライベート ネットワークの基本的な構成要素
- 使用できるアドレス空間、サブネット、セキュリティを指定
- 1 つまたは複数のサブネットを作成可能
- ネットワーク セキュリティ グループ (NSG) を設定して、サブネット間と VM 間のトラフィック フローを制御
ネットワーク セキュリティ グループ (NSG)
- ソフトウェア ファイアウォールとして機能
- ネットワーク レベルでネットワーク トラフィック規則を適用するために使う主要なツール
- ネットワーク インターフェイスとサブネット レベルで適用可能
- 各受信要求または各送信要求にカスタム規則を適用することで、通信を制御
Azure VPN Gateway
- 暗号化された接続のエンドポイントにすることができる特殊な仮想ネットワーク ゲートウェイ
- オンプレミスの場所から Azure にインターネット経由で受信接続するためのエンドポイントを提供
- Azure 仮想ネットワーク間で暗号化されたトラフィックを提供
- 各仮想ネットワークには VPN ゲートウェイを 1 つだけ作成可能
Azure ExpressRoute
- 50 Mbps、100 Mbps、200 Mbps、500 Mbps、1 Gbps または 10 Gbps の固定の帯域幅
- 各回線はサービスまたは s キーという GUID で定義
- Border Gateway Protocol 経由での動的ルーティング
- 接続モデル
参考サイト
Azure:Azure管理者資格に向けての勉強メモ~AZ-104 Azure 管理者向けの前提条件~
Azueの認定資格の一つである、Azure管理者資格に向けて、Microsoft Learnの下記のラーニングパスを実施しています。
勉強した内容の復習用にいくつかのキーワードの意味や自分なりに理解した内容のメモを残していきます。
内容順次更新していきます。
コンピューティング周り
Azure VM
Azure App Service
- Web アプリケーション、REST API、およびモバイル バックエンドをホストするための HTTP ベースのサービス
- App Service プランのレベルを変更することで、Web アプリのスケールアップとスケールダウンを実行可能
Azure Resource Manager
- Azureで作成したいリソースを名前付きのリソース グループにまとめ、それらすべてのリソースを、まとめてデプロイ、更新、または削除可能
- Resource Manager テンプレート
Azure Site Recovery
Azure Backup
- 概要
- 様々な対象をAzure Backup コンテナ―にバックアップ可能
- バクアップ対象はオンプレミスとクラウドも問わない。サーバとクライアントも問わない
- 課金モデル
- 容量に対する従量制、データ転送には料金発生しない
- スケーリング
- バックアップ ストレージを自動的に、無制限に割り当てて管理
- ストレージ オプション
- ローカル冗長ストレージ・・・データのコピーはすべて同じリージョン内
- geo 冗長ストレージ・・・複製されたデータがセカンダリ リージョンに配置
- セキュリティ
- 転送・保存時の暗号化が可能
- そのほか
運用・管理周り
アカウント
- Azure サブスクリプション
管理ツール
- Azure portal
- Azure CLI
- Azure PowerShell
- Windows PowerShell または PowerShell Core に追加して使用するモジュール
- Azure サブスクリプションに接続してリソースを管理可能
- 2つのコンポーネントにより構成
- ベース PowerShell 製品・・・Windows 上の PowerShell または、macOS および Linux 上の PowerShell Core
- Azure PowerShell モジュール・・・PowerShell に Azure 固有のコマンドを追加するためにインストールする追加モジュール
Azure AD
- クラウドベースの ID 管理ソリューション
- 分類
- テナント・・・グループ・ユーザを追加可能、共通のアクセスレベルを共有
- グループ・・・ユーザを追加可能、共通のアクセスレベルを共有
- ユーザ・・・個別のアクセスレベルを設定
- ロール
- グローバル管理者
- 通常の管理者
- ID セキュリティ スコア
- 併用ーAzure AD×Active Directory
- オンプレミスとクラウドにまたがるIDソリューション
- ユーザー ID をハイブリッド ID と呼ぶ
- 認証の仕方は3種類
- Azure AD パスワード ハッシュの同期
- Azure AD パススルー認証
- フェデレーション認証
- Azure AD ライセンス
- Azure Active Directory Freeの提供機能
- ユーザーとグループを管理
- 基本レポート
- オンプレミスの Active Directory 同期
- Azure AD ユーザーのセルフサービス パスワード リセット
- Office 365、Azure サービス、サードパーティ製 SaaS アプリケーションにシングル サインオン
- Azure Active Directory Premium P1の提供機能
- Free レベルのすべての機能
- オンプレミスおよびクラウドベースのサービスとリソースへのアクセスを許可
- 動的グループを使用
- オンプレミスの ID 管理スイートがサポート
- セルフサービス パスワード リセットは、オンプレミス ベースのユーザーにもサポート
- Azure Active Directory Premium P2の提供機能
- 前の 2 つのレベルのすべての機能
- Active Directory Identity Protection が提供(リスクベースの条件付きアクセスを構成)
- Privileged Identity Management を使用して、管理者の監視、詳細な制限を設定
- Azure Active Directory Freeの提供機能
- Azure AD B2B
- 外部ユーザーをテナントに招待
- Azure AD B2B Collaboration を利用して共同作業可能
- Azure AD B2C
- 顧客の ID とアクセスを管理可能
- 従量課金制
- Azure AD DS
- ドメイン コントローラーなしで、仮想マシンをドメインに追加可能
- ユーザーは会社 Azure AD 資格情報を利用し仮想マシンにアクセス可能
- Azure AD Connect → Azure Active Directory → Azure AD Domain Serviceと経る
- アプリケーション管理
- クラウドベース ソリューションとして Azure AD を使用
- 社内と社外のユーザーが利用するアプリケーションへのさまざまなデバイスや場所からのユーザー アクセスを管理
- Azure AD アプリ ギャラリー アプリケーション
- Azure AD と統合された何千もの SaaS アプリケーション
- Azure Marketplace でアプリケーションを見つかります。
- カスタム アプリケーション
- Azure AD に登録した会社で開発されたアプリケーション
- ギャラリー以外のアプリケーション
- ギャラリーにデフォルトで表示されない、手動で追加したアプリケーション
- オンプレミスのアプリケーション
- オンプレミス アプリケーション
- Azure AD アプリケーション プロキシ
- クラウドベース ソリューションとして Azure AD を使用
- 条件付きアクセス ポリシー
- アプリケーションにアクセスする前に追加の認証に合格することをユーザーに要求
- Azure AD Identity Protection
- ユーザーの ID リスクを自動的に検出、調査、修復
- リスクについて収集されたすべての情報をエクスポート可能
- リスク ポリシーを使用し、脅威を自動的に検出し、対処
Azure Monitor
- 分析用のログ データを収集する統合ソリューション
- オンプレミス ネットワークと Azure ネットワークの全体が対象
Log Analytics
- Azure Monitor の Log Analytics ツール
- 包括的な分析のために大量のログ データのクエリと集計を行うことが可能
- ネットワーク全体のリソースとサービスに関する、より的確な解釈が可能
ストレージ周り
Azure Cosmos DB
- 格納データ・・・半構造化データ、つまり NoSQL データがサポート
- 検索
- クエリ用の SQL がサポート
- すべてのプロパティに既定でインデックスが付与
- 世界各地にデータをレプリケート可能
- 5 つの整合性レベルのいずれかを選択することができる
Azure BLOB ストレージ
- 格納データ・・・写真やビデオなどのファイルの格納をサポート
Azure SQL Database
- 構造化データ
- 検索
- SQL クエリがサポート
そのほか
ネットワーククライアント
- シック
- サーバーを使用せずに、ローカル環境でデータを処理して格納可能
- クライアントとサーバーの対話は最小限で、対話に使用するデータは共有ネットワーク ドライブにのみ格納可能
- シン
- ローカル環境でデータを処理または保存することは不可
- サーバーに全面的に依存して計算能力とストレージを提供される
- 現在、シン クライアントとは、実行されているデバイスに関係なく、サーバーの情報を要求して表示する Web アプリケーションのことをいう
- ハイブリッド・・・限られたローカル データ処理を行うことはできるが、ローカル ストレージの機能はない
Docker
- コンテナー
- ソフトウェア パッケージを構築して実行できる、緩く分離された環境
- 任意のコンピューティング環境でアプリケーションを迅速かつ確実に実行するためのコードとすべての依存関係が含まれている
- Docker エンジン
- Docker Hub
- コンテナー
- イメージは、ソフトウェアが含まれている移植可能なパッケージ
- Unionfs
データストレージ手法
- 構造
- 構造化データ
- 半構造化データ
- 非構造データ
- 多くの場合、非構造化データは写真やビデオのようにファイルで提供
- トランザクション
- 一緒に実行されるデータベース操作の論理グループ
- ACIDが適用される
参考サイト
Azure Site Recovery について - Azure Site Recovery | Microsoft Docs
AWS:AWS 認定ソリューションアーキテクト – プロフェッショナ(SAP-C01)合格体験談
先日、やむない出勤帰りにAWS 認定ソリューションアーキテクト – プロフェッショナル(SAP-C01)を受けてきました。(2020年5月)
どうにかこうにか合格できたのですが、わりと苦労して受かったのでせっかくということで合格体験記を初めて書いておきたいと思います。
バックグラウンド
まずは私の経歴です。SIer勤務4年目。1~2年目はLinuxサーバといくらかのミドルウェアを扱う仕事をしており、3年目以降はネットワークを扱っています。AWSは基盤的な話が多く、この経歴は割と強く有利に働いているというように感じました。
SAPの受験前にSAAを合格しておりますので、その段階からスタートして勉強の経緯を記そうと思います。
ステップ0:AWS SAA合格
合格点900ちょっとくらいでした。
まずの第一歩は何といってもSAAの合格でした。 今となっては旧バージョンの試験となっておりますので、こちらの細かい体験は残しません。一通り以下の勉強をしています。
・AWS WEB問題集で学習しようを2周
下記のサービスです。みんなお世話になっているやつです。私は基本的に資格勉強は問題集を数をこなすことで理屈を覚えていくタイプなんで、繰り返し解いていました。 aws.koiwaclub.com
・Black Beltのスライドに目を通す
いくつかのサービスのスライドに目を通しました。実際に読んだのは、下記です。ダウンロードしたpdfファイルのタイトルから機械的に持ってきたので、多少ガチャガチャしているのはお許しください。
- route53-public
- EC2-Windows
- Redshift-public-v02
- CloudTrail-Config-public
- Elastic-Beanstalk
- AutoScaling
- DynamoDB
- RI_update
- ElastiCache
- RDS
- AmazonEFS
- DirectConnect
- CloudFormation
- IAM_Part1
- IAM_Part2
- S3_Glacier
- EC2
- EC2Spot
- VPC-Basic
- VPC
- EBS
- CloudWatch
- Lambda Part1&2
- VPC-Advanced
- Amazon_CloudFront
- Blakbelt_Auto_Scaling
- ELB
・読書 いくつかの本を読みました。広く浅く基本を知るにはちょうど良かったと思います。 適当にタイトルだけ並べます。
- Amazon Web Services パターン別構築・運用ガイド 改訂第2版
- Amazon Web Services 基礎からのネットワーク&サーバー構築 改訂版 (日本語)
以上ですね。 合計の勉強時間は覚えていないです。
ステップ1:AWSのサービスをいくつか触ってみる(15時間くらい)
机上だけの知識にとどめておく気もなく、いくつかのサービスの理解度を高めるために実際にいくつかのサービスを作成してみました。だいたいは単発で作成しましたが、AutoScalingとELB、LambdaとS3 Event通知、LambdaとDynamoDBくらいだけは組み合わせで作成をしたりして、なんとなく動かしてみました。
ステップ2:AWS WEB問題集で学習しよう(17時間くらい)
上でもお世話になったやつですね。よりたかい有料プランに申し込んで、問題集を一周しました。正直正答率は全部半分以下とかそれくらいです。1つ1つを時間かけてやって、1セット7問×49セットで343問について逐次わからない単語の調査をやっていました。知らないサービスが出てきたらあっさり飛ばすことを心掛けて、1問平均3分、トータルで17時間くらいかかっています。
ステップ3:Black Beltのスライドに目を通す(5時間くらい)
あまりにも知らないサービスが多かったので、追加でいくつかのサービスのスライドに目を通しました。実際に読んだのは、下記です。ダウンロードしたpdfファイルのタイトルから機械的に持ってきたので、多少ガチャガチャしているのはお許しください。(二回目)
- ETS
- directory-service
- WorkDocs-WorkMail_public
- CodeCommit-CodeBuild
- AmazonCognito
- Redshift-update
- CodeSeries_CodeDeploy_and_CodePipeline
- X-Ray
- Organizations
- AWSServiceCatalog_public
- athena
- SageMaker_part1
- StepFunctions
- AmazonMQ
- EMR
- Transit_Gateway
- Chime
- AWSSystemsManager_0214
- Batch
ここではスピードを特に意識してやっていて、1つのサービスあたり15分で、19サービス分でだいたい5時間くらいかかりました。
ステップ4:AWS WEB問題集で学習しよう2周目(12時間くらい)
私は問題集を何回も繰り返して、数をこなして単語や理屈を覚えていくタイプなので、当初の予定通り2周目をこなしました。平均して正答率は6~7割になるくらいになっています。まだまだ覚えていないところも多い状態でした。1セットを15分くらいで解いて、49セットで12時間くらいかかっています。
ステップ5:数字を単語帳に整理して暗記(3時間くらい)
単語帳メーカーを使用して、ディスクサイズとか、NATゲートウェイの帯域とか、覚えておいたほうがよさそうな数字を暗記するようにしました。個人的にためになった数字は、SQS FIFOの1秒当たり処理量に300件です。正直これはもっと早く、問題集2周目を始める前に完璧に覚えているくらいにしておくべきでした。 tangomaker.net
ステップ6:公式のトレーニング実施(6時間くらい)
公式に提供されているトレーニングをやりました。所要時間4時間とか書いていますが、それよりももうちょっと時間かかりました。解説の動画で、どうやって解いていくのかが解説されているので、その考え方が非常に参考になります。いくつかのサービスを知らないとわからない内容なのですが、これをふまえた上で問題を解いたほうが理解が進みそうと感じたので、ステップ5と同じく、問題集2周目を始める前にやっておくべきだったなと思っています。 www.aws.training
ステップ7:公式の模試(1時間くらい)
公式の模試をやりました。解説が何もなく、正答率だけが出るということを知らなかったために、問題のスクリーンショットも取っておらず、絶望しました。しかも、得点率が65%。この時すでに試験の4日前であり、手ごたえもそれなりにあったので本当に絶望しました。正直この段階でかなり心が折れていましたが、それでもどうにか奮い立たせました。
ステップ8:AWS WEB問題集で学習しよう3周目(8時間くらい)
急遽、もう1周やりました。ここまでくると、正答率も9割、選択肢だけ見ても正解の選択肢がわかっていました。しかしそれだけでなく、なぜ正解の選択肢がよくて、他がだめなのかのポイントも選択肢見ればわかるところまで来ていました。だいたい1セット10分くらい、49セットで8時間やりました。
ステップ9:AWS WEB問題集で学習しよう3周目の復習(2時間くらい)
3週目をやりつつ、間違えた設問をすべてメモしていました。それらを試験を受ける日の前日直前にすべて復習しました。
ステップ10:受験
受験しました。合格できて本当によかったです。スコアは850ちょっとくらいです。
時間が3時間以上あったからか、かなりの疲労感がありました。ひたすら早く解き続けて、60分復習に確保しましたが、数問わからなかった問題の読み込みでつぶし、復習はすべてしきれませんでした。ただ、数問読み違えている設問もあったのをひろえたのは良かったです。
様々な人がおっしゃっていますが、日本語訳はかなり問題があります。一番びっくりしたのは英語の問題文で確認してみると、アクティブとスタンバイが日本語問題文と英語問題文で入れ替わっていたことでした。衝撃でした。
まとめ
以上です。トータルで69時間という、かなりの時間がかかっていました。振り返ってみて、びっくりしますね。ちゃんと集計できてない時間もあるので、1.2〜3倍くらい実際にはかかっているかもしれませんが。
勉強期間はだいたいSAAの勉強期間を除いて、1.5か月弱ですね。土日、GWをかなり使っていました。仕事が落ち着いていたのも助かりました。
おまけ
やろうとして、できなかった対策がいくつかあったので、そのメモです。
・某有名な英語ブログ 英語読むのに時間かかりすぎて、やめました。
・某Udemyの英語問題集 英語のところは百歩譲っていいと思ったのですが、70問すべてとかないと正解不正解がわからないこと、解説がなさそうなところからやるのをやめました。
・よくある質問集 主要なサービスくらいは抑えておこうと思ったのですが、意外と1つ1つのボリュームが多かったので、あきらめました。
Graphviz:Graphvizにて使用できるattributes(属性?)について仕様を調べる ~bgcolor~
****************** 以下、定期
Graphvizの各コンポーネントにて使用できる属性は以下のページにまとめられている。
しかしながら英語である。いや、英語であることを百歩譲っておいておいたとしても、図形の例がないために具体的にどのような違いが出るのかがわかりにくい。 ということでこのattributesを実際に各コンポーネントに実装して、どんな仕様になるのかということをここに整理していく。
徐々に調査して、追加していく所存。
****************** 以上、定期終了
今回の対象属性としてbgcolorを使用する。
環境
・OS:Windows10にて、VirtualBox6.0.8上のCentOS7.4
# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core)
・Graphviz : 2.38..0
# dot -V dot - graphviz version 2.30.1 (20180420.1509)
bgcolor
対象コンポーネント:グラフ、クラスター 対象レイアウト:全部 グラフに対して指定すればグラフ内、クラスターに対して指定すればクラスター内の背景の色を変更することができる。色の指定については、決められた色名で指定することもできれば、16進数カラーコードで指定することもできる。
色名については、下記のサイトに一覧がまとまっている。 emden.github.io
実際に以下のdotファイルを使用してグラフを作成した。
digraph { layout=dot bgcolor=darkgreen subgraph cluster_X { bgcolor=cyan4 C -> D } subgraph cluster_Y { bgcolor="#26ffa2" F -> E } subgraph cluster_Z { G -> H } A -> B }
その結果できた図形は以下のとおりである。
カラーコードと色名はどちらも、同じグラフ内にて使用することができている。また、グラフの背景と、クラスターX、クラスターYにそれぞれbgcolor
を指定しているためにそれぞれの色が設定されている。
クラスターZのみは、色の指定をしていないため、グラフ背景に設定されている色が、そのまま色づけられている。