UPKIシングルサインオン実証実験 の概要 · シングルサインオンで スムーズなアクセス 10 Shibboleth概要 米国EDUCAUSE/Internet2にて2000年に
AWSによる マイクロソフトアーキテクチャの最適化 · • 標準のActive...
Transcript of AWSによる マイクロソフトアーキテクチャの最適化 · • 標準のActive...
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
アマゾン ウェブ サービス ジャパン株式会社
ソリューションアーキテクト 渡邉源太
2017/6/1
AWSによる
マイクロソフトアーキテクチャの最適化
自己紹介
名前
• 渡邉源太
所属
• アマゾン ウェブ サービス ジャパン株式会社
• ソリューションアーキテクト
好きなAWSサービス• Amazon WorkSpaces/AppStream 2.0
前提条件とセッションのゴール
想定する前提条件
• Active Directory/SQL Serverなどマイクロソフトアーキテクチャの設計・構築に関する知識・経験
• 一般的なITインフラに関する知識
セッションのゴール
• マイクロソフトアーキテクチャをAWS上に展開するための最適な設計について理解する
• AWSのマネージドサービスを利用するメリットについて理解する
Agenda
• アーキテクチャ概要
• Active Directory on AWS
• SQL Server on AWS
• まとめ
アーキテクチャ概要
世界中に広がるAWSの拠点
https://aws.amazon.com/jp/about-aws/global-infrastructure/
AWS クラウドは世界中の 16の地理的リージョン内の 42 のアベイラビリティーゾーンで運用されており、さらに 3 つのリージョンと 8 つのアベイラビリティーゾーンが追加される予定です
リージョンは複数のアベイラビリティゾーン(AZ)で構成されています
AZは、複数のデータセンターによって構成され、高い耐障害性を提供できる設計になっています
リージョンとアベイラビリティゾーン(AZ)
AZ
AZ
AZ AZ AZ
Transit
Transit
Data Center
Data Center
Data Center
Data Center
Amazon EC2(Elastic Compute Cloud)
インスタンス:• 仮想コンピューティング環境
• 数分で起動し、1時間ごとの従量課金で利用可能
• 追加・削除、スペック変更が数分で可能
管理者権限(root / Administrator) で利用可能
1任意のゾーンに分散配置可能
リージョンアベイラビリティゾーンBアベイラビリティゾーンA
セキュリティ
社内アプリケーションエンドユーザーコンピュー
ティングビジネスアプリケーション
Amazon EC2 Windows,
Amazon RDS,
AWS CloudFormation,
AWS CloudFront
Amazon EC2 Windows,
AWS Directory Service,
Amazon RDS,
AWS Marketplace
Amazon WorkSpaces,
Amazon AppStream, AWS
Marketplace,
AWS Mobile Services, SaaS
AWS Identity and Access Management (IAM),
AWS CloudHSM, AWS Key Management Service (KMS),
security groups, AWS Marketplace
Amazon EC2, Amazon S3, Amazon RDS,
Amazon VPC, Amazon Direct Connect,
AWS Directory Service, AWS IAM,
AWS Service Catalog
インフラストラクチャ
WindowsワークロードのためのAWSサービスオファリング
AWS Elastic Beanstalk,
AWS CodeDeploy,
AWS CloudFormation
DevOps
Availability Zone
Private SubnetPublic Subnet
Availability Zone
Private SubnetPublic Subnet
Remote
Users
マイクロソフトアーキテクチャ例
Virtual Private
Gateway
Corporate
Office
IIS
App
IIS
Web
IIS
App
IIS
Web
VPN
AWS Direct
Connect
Internet
Gateway
RDGW
VPC NAT
Gateway
RDGW
VPC NAT
Gateway
AWS
Directory
Service
AWS
Directory
Service
MS
SQL
MS
SQL
Always On
Availability
Group
VPC Endpoint Amazon S3
Auto Scaling
AmazonCloudwatch
各拠点/関連会社
監視システム
AWS Management Console
Internet
Active Directory
Amazon VPCの利用例
社内イントラ
既存DCからAWSへ接続し自社環境として利用
様々なメリット
• 低コスト/短期間導入
• セキュリティ向上
• 運用工数削減
• 老朽化対応コスト既存データセンター 専用線
SFA
会計/人事・給与
ファイル共有
ポータル
BI
各種業務処理
Remote Desktop Gateway
• Remote Desktop Protocol (RDP) over HTTPS を使用してVPN接続なしにセキュアで暗号化された接続を確立
• アベイラビリティゾーン(AZ)障害の際には他のAZにフェールオーバーしたリソースにRemote Desktop Gatewayからアクセス可能
RDGWRDGW
Public Subnet Public Subnet
Internet Gateway
Remote Management &Administration
Elastic IP Elastic IP
AWS Identity and Access Management (IAM)
AWS操作をよりセキュアに行うための認証・認可の仕組み
AWS利用者の認証と、アクセスポリシーを管理▪ AWS操作のためのグループ・ユーザー・ロールの作成が可能
▪ グループ、ユーザーごとに、実行出来る操作を規定できる
▪ ユーザーごとに認証情報の設定が可能
開発チーム 運用チーム
AWSコンソールへのフェデレーション
クライアント
AD
ADFS
(1)ブラウザからリクエスト
(4) AssumeRoleWithSAML
(3) SAMLトークン
(6) リダイレクト
AWS ルートアカウントやIAMユーザークレデンシャルの代わりに、Active Directoryのユーザー名とパスワードでAWSのマネジメントコンソールにサインインが可能
AWS は SAML 2.0 (Security Assertion Markup Language) を使用した ID フェデレーションをサポート
DC/GC/DNS
ADFS
STS
AWS CloudFormation
• EC2やELBといったAWSリソースの環境構築を、設定ファイル(テンプレート)を元に自動化できるサービス
• テンプレートを自由に作成できるため、自分好みのシステム構成を自動的に構築できる
• テンプレートには起動すべきリソースの情報をJSONフォーマットのテキスト形式で記述する
テンプレートベースのプロビジョニング
インフラをコード化
宣言・柔軟性 簡単に利用可能
CloudFormation:コンポーネントとテクノロジー
テンプレート AWS CloudFormation スタック
JSON形式のテキスト
パラメータの定義
リソースの作成
実際の設定
AWSサービスの設定
サービス全体での統合
サービスのイベント管理
カスタマイズ
フレームワーク
スタックの作成
スタックの更新
エラー検知とロールバック
AWS CloudFormation Designer
• テンプレート内のリソースを可視化
• テンプレートの修正をドラッグ&ドロップで対応可能
• サンプルテンプレートのカスタマイズが容易
AWS クイックスタートリファレンス
セキュリティと可用性に関するAWSのベストプラクティスにしたがって以下のようなワークロードをデプロイ可能
• Active Directory ドメインサービス
• Active Directory フェデレーションサービス
• SQL Server
• SharePoint Server
• Exchange Server
• Lync Server
• Windows PowerShell DSC
• Remote Desktop ゲートウェイ
Active Directory on AWS
Active Directory on AWS
• デスクトップや社内アプリケーションへのシングルサインオン(SSO)
• アプリケーションやリソースへのアクセス管理
• グループポリシーによるコンピュータのポリシー管理
クラウドワークロードのためのActive Directoryドメインサービス(AD DS)
• シナリオ1: 新規のAD DSをAWSに展開
• シナリオ2: オンプレミスのAD DSをAWSクラウドに拡張
• シナリオ3: AD DSをAWS Directory ServiceでAWSに展開
• AWS Directory Service for Microsoft Active Directory (AWS Microsoft AD)
シナリオ 1:新規のAD DSをAWSに展開
• EC2にAD DSを新しくインストールするシナリオ
• オンプレミスにAD DSは存在せず、VPCのみにフォレスト/ドメインが存在
Availability Zone A
Private Subnet
Availability Zone B
Private Subnet
DC/GC/DNS
DC/GC/DNS
高可用性
• ドメインコントローラーを複数のアベイラビリティゾーン(Multi-AZ)に配置することで高可用性と耐障害性を提供
• グローバルカタログサーバー(GC)とDNSを各AZに配置
• もし各AZにこれらのサーバーを配置しない場合は、AD DSクエリと認証のトラフィックは、AZをまたぐことになる。また、AZ障害の場合はこれらのサーバーが機能しなくなる
Availability Zone
DC/GC/DNS
Availability Zone
DC/GC/DNS
バックアップ
• 「Volume Shadow Copyサービス(VSS)」により、Active Directoryサービスの起動中にバックアップをとることが可能
• Windows Serverバックアップ、その他のActive Directory互換のバックアップツールを使用している場合は、そのまま使用可能
• バックアップ ツールによって取得されたバックアップ データが保管されているボリュームのスナップショットを取得し、データを保全
Amazon EBS
Snapshot
DCVSSでバックアップをEBSに保存 スナップショットを取得
リストア:DCのシステム全体のスナップショットは取得しない• DCのシステム全体のスナップショットを取得しない
• USNロールバックを誘発する
• ロールバックが発生した DC はドメイン環境から隔離され、複製パートナーとして見なされなくなる
DC の数は 1 台と認識
DC の数は 2台と認識
ドメインに追加
スナップショット取得ドメインに追加DC の数は 3台と認識
https://technet.microsoft.com/ja-jp/library/dd363545(v=ws.10).aspx
スナップショットには 3 台目の DC に関する情報が保存されていない。これをリストアすることでDBに不整合DC
DC DC
DC
リストア:ディレクトリ サービス復元モード(DSRM)の利用• EC2 WindowsインスタンスでDSRMをサポート
• DC を ディレクトリサービス復元モード(DSRM)でブートし、権限のあるリストアを実行
• 権限のあるリストアとは、過去の時点のDCの情報を他のDCに復元すること
• これを行わない場合、他のDCが持つ最新の情報で、リストアされたDCの内容が上書きされる
シナリオ2:オンプレミスのAD DSをAWSクラウドに拡張• 既存のオンプレミスのAD DSをAWSのVPCに拡張するシナリオ
• VPC上のサーバーは、VPC上にあるドメインコントローラーやDNSに接続可能
DC
オンプレミスのデータセンター
Availability Zone A
Private Subnet
Availability Zone B
Private Subnet
DC/GC/DNS
DC/GC/DNS
サイトのトポロジ
• AWSではアベイラビリティゾーンをサイト(個別のデータセンター)とみなす
• サイト内のPCやメンバーサーバーは同じサイトにあるDCに優先的にリクエストを投げる
オンプレミスのデータセンター
Availability Zone A
Private Subnet
Availability Zone B
Private Subnet
DC/GC/DNS
DC/GC/DNS
DC/GC/
DNS
サイト
サイト間レプリケーション
サイト サイト
シナリオ 3:AD DSをAWS Directory ServiceでAWSクラウドに展開• EC2にAD DSを構築するのではなくAWS Directory Service (Microsoft
AD)を利用
• Microsoft ADは、Windows Server 2012 R2をベースとするフルマネージドのディレクトリサービス
Availability Zone A
Private Subnet
C-DCA
Availability Zone B
Private Subnet
C-DCB
• フルマネージドのディレクトリサービス
• 標準のActive Directory管理ツールを使用してグループポリシー、信頼関係、シングルサインオンなどの機能を利用可能
• Active Directory認証を利用したAWSアプリケーションへのアクセス(Amazon WorkSpaces, WorkDocs, WorkMail)
AWS Directory Service
AWS Directory Service – Microsoft AD
Microsoft AD:オンプレミスとの信頼関係
Availability Zone A
Private Subnet
C-DCA
Corporate Network
Tokyo
DC1
Osaka
DC2Availability Zone B
Private Subnet
C-DCB
company.cloudcompany.local
Direct Connect
Active Directoryフェデレーションサービス(ADFS)
• セキュリティで保護されたID連携(フェデレーション)とWebシングルサインオン(SSO)を提供
• AD DS/AD LDSで認証されたユーザーに対してセキュリティトークンを発行(SAML 1.1/2.0)
• Office 365やGsuiteなどへのシングルサインオン(SSO)にも利用される
ADFSリファレンスアーキテクチャ
DC/GC/DNS
Private Subnet Public Subnet
ADFSWAP
DC/GC/DNS
Private Subnet Public Subnet
ADFSWAP
外部のユーザー
• VPN接続なし
に、外部のユーザー
がWeb Application Proxy(WAP)を経由してPrivate Subnetに
配置されたADFSに
アクセス可能
Elastic IP
Elastic IP
SQL Server on AWS
Amazon RDS for SQL Server
• 以下にフォーカス:
• ビジネスバリューのタスク
• ハイレベルのチューニングタスク
• スキーマの最適化
• データベースエクスパートが自社内にいない場合
SQL Server ソリューションの選択
SQL Server on Amazon EC2
• フルコントロールが必要:
• DBインスタンス
• バックアップ
• レプリケーション
• クラスタリング
• Amazon RDSにはないオプションを使用する場合
SQL Server on Amazon EC2
▪ ライセンスのオプション
▪ WindowsおよびSQL Server込みのAmazon Machine Instance (AMI)
▪ Windows AMIにSQL Serverをインストール(BYOL)
▪ Windowsまたは混合モード認証
▪ 仮想マシンのセキュリティ、ストレージ、ネットワークポートなどの管理
▪ 完全なSQL Server管理者権限
SQL Serverの高可用性と災害対策
複数のアベイラビリティゾーン(Multi-AZ)の利用
• インスタンスレベルとAZレベルの耐障害性
• 同期レプリケーション
オプション
• Enterprise Edition: AlwaysOn 可用性グループ
• Standard Edition(~2014): サードパーティのブロックレベルレプリケーションを使用したフェイルオーバークラスタインスタンス
Multi-AZ AlwaysOn 可用性グループ
Availability Zone 1
Private Subnet
EC2
プライマリレプリカ
Availability Zone 2
Private Subnet
EC2
セカンダリレプリカ
同期コミット自動フェイルオーバー
AWS Region
自動フェイルオーバーのシナリオ
• SQL Server AlwaysOn可用性グループにより以下のシナリオをサポート
• 単一インスタンスの障害からの保護
• クラスタノード間の自動フェイルオーバー
• セカンダリのアベイラビリティゾーン(AZ2)に配置されているインスタンス障害からの保護とAZ1への自動的なフェイルオーバー
• プライマリのアベイラビリティゾーン(AZ1)全体の障害でプライマリノードと監視ファイル共有を失った場合は自動的にフェイルオーバーされない
Multi-Region AlwaysOn 可用性グループ
Availability Zone 1
Private Subnet
EC2
プライマリレプリカ
Primary: 10.0.2.100
WSFC: 10.0.2.101
AG Listener: 10.0.2.102
AWS Region A
Availability Zone 2
Private Subnet
EC2
セカンダリレプリカ
Primary: 10.0.3.100
WSFC: 10.0.3.101
AG Listener: 10.0.3.102
Availability Zone 1
Private Subnet
EC2
セカンダリレプリカ
Primary: 10.1.2.100
WSFC: 10.1.2.101
AG Listener: 10.1.2.102
同期コミット自動フェイルオーバー
AWS Region B
非同期コミット手動フェイルオーバー
Elastic IP Elastic IP
VPN
サードパーティ製品によるフェイルオーバークラスタインスタンス
Amazon EBS Amazon EBS
Availability Zone 1
Private Subnet
EC2
プライマリノード
Availability Zone 2
Private Subnet
EC2
セカンダリノード
AWS Region
データレプリケーション
SIOS DataKeeper Cluster Editionなど
• Active Directoryとの統合
• 自動フェイルオーバー
• 自動パッチ適用
• 自動バックアップ
• ポイントインタイムリカバリ
AmazonRDS
Amazon RDS for SQL Server
SQL Server のネイティブバックアップと復元
• SQL Serverのネイティブバックアップを取得し、Amazon S3バケットに保管可能に
• RDSからRDS、オンプレミスからRDS、RDSからオンプレミスのすべてのパターンでバックアップおよび復元することが可能
• すべての SQL Server エディションで、AWS KMSを使用するバックアップの暗号化をサポート
• 災害対策、データベース移行、テスト環境構築などに活用
ローカルタイムゾーン対応
• RDS for SQL Serverのタイムゾーンを任意のタイムゾーンに合わせることができる
• インスタンスを作成した後でタイムゾーンを変更することはできない
• OS レベルでタイムゾーンを変更するため、すべての日付列や値に影響する
Multi-AZ SQL Server on Amazon RDS
Availability Zone 1
Private Subnet
Availability Zone 2
Private Subnet
同期コミット自動フェイルオーバー
AWS Region
AmazonRDS
プライマリ
AmazonRDS
セカンダリマネージドサービス
SQL Server EC2とRDSとの比較
EC2 RDS
ライセンス込みの利用 ✓ ✓
BYOL ✓ ✓
インスタンスへのフルコントロール ✓
自動バックアップ ✓
セルフマネージドのAlwaysOn可用性グループ
✓
AWSマネージドのMulti-AZデプロイメント ✓
まとめ
Availability Zone
Private Subnet
10.0.2.0/24
DBAPPWEB
SQL
ServerApp
Server
IIS
Server
Availability Zone
Private Subnet
10.0.3.0/24
DBAPPWEB
SQL
ServerApp
Server
IIS
Server
Remote
Users / Admins
Domain
Controllers
DC
corporate data center
VPN
Connection
例1: EC2上のADによるレプリケーションまたは信頼関係
DC
Domain
Controller
DC
Domain
Controller
信頼関係またはレプリケーション
Auth/
LDAP
Auth/
LDAP
Auth/
LDAP
アプリケーション
Auth/
LDAP
Auth/
LDAP
RDS
SQL Server
Availability Zone
Private Subnet
10.0.2.0/24
APPWEB
App
Server
IIS
Server
Availability Zone
Private Subnet
10.0.3.0/24
APPWEB
App
Server
IIS
Server
Remote
Users / Admins
Domain
Controllers
DC
corporate data center
VPN
Connection
例2: AWS Microsoft ADによるオンプレミスとの信頼関係
RDS
SQL Server
AWS Managed Services
AWS Managed Services
Domain
Controller
Domain
Controller
信頼関係
アプリケーション
DB
DB
DC
DC
Availability Zone
Private SubnetPublic Subnet
NAT
10.0.0.0/24 10.0.2.0/24
APPWEB
App
Server
IIS
Server
RDGW
Availability Zone
Private SubnetPublic Subnet
NAT
10.0.1.0/24 10.0.3.0/24
APPWEB
App
Server
IIS
Server
RDGW
Microsoft
AD DC
RDS
SQL
Server
AWS Managed Services
Microsoft
AD DC
RDS
SQL
Server
AWS Managed Services
例3: AWS Microsoft ADによるクラウド全面移行
WorkSpaces
WorkSpaces
DB
DB
DC
DC
まとめ
• AWSは、マイクロソフトアーキテクチャに最適化された幅広いスケーラブルなサービスを提供
• AWS クイックスタートリファレンスでは、セキュリティと可用性に関するベストプラクティスにしたがってActive DirectoryやSQL Serverなどのワークロードをデプロイ可能
• AWSの提供するマネージドサービスを活用することで、効率的な管理が可能
本セッションのFeedbackをお願いします
受付でお配りしたアンケートに本セッションの満足度やご感想などをご記入くださいアンケートをご提出いただきました方には、もれなく素敵なAWSオリジナルグッズをプレゼントさせていただきます
アンケートは受付、又はパミール3FのEXPO展示会場内にて回収させて頂きます
Microsoft ADを使用する場合の考慮事項
Domain Adminsの権限はAWS側が保持
Microsoft ADの機能/制約
オンプレミスとの信頼関係構築 Microsoft ADのフォレストと信頼関係を構築可能
他のドメインへの参加既存のドメインにMicrosoft ADのDCを参加させることは不可。フォレスト間で信頼関係を構築する
のは可能
スキーマの拡張URLで申請する事で可能
https://aws.amazon.com/jp/directoryservice/schema-extensions/
機能レベル Windows Server 2012 R2機能レベル
権限の委譲 権限の委譲が可能
DNSDNS構成(追加、削除、レコード、ゾーン、フォワーダの更新)の管理、DNSイベントログの参照
セキュリティイベントログの参照が可能。それ以外のログは参照不可
Group Policyの利用
グループポリシーオブジェクトの作成とOUへのリンク が可能。ただし、ドメインレベルのリンク
は不可能。ドメインユーザーのパスワードポリシーの変更は不可(ドメインレベルのGPOで設定する
必要があるが、権限なし)
ユーザー数 最大で50,000ユーザー。200,000のオブジェクト(ユーザー、コンピュータ、その他)
RDS for SQL ServerとSQL Server on EC2の比較(1/2)
Amazon RDS for SQL Server SQL Server on Amazon EC2
マネージド自動バックアップ Yes No (メンテナンスプランを構成して管理、またはサードパーティソリューションの利用)
Multi-AZによる自動フェイルオーバー
Yes No (手動によるフェイルオーバー管理)
ビルトインのインスタンスとデータベース監視メトリックス
Yes No (CloudWatchへのメトリックスのプッシュまたはサードパーティソリューションの利用)
自動ソフトウェアパッチ Yes No
構成済みパラメータ Yes No (デフォルトのSQL Serverインストール)
DBイベント通知 Yes No (手動でDBイベントをトラックして管理)
RDS for SQL ServerとSQL Server on EC2の比較(2/2)
Amazon RDS for SQL Server SQL Server on Amazon EC2
SQL認証 Yes Yes
Windows認証 Yes Yes
TDE (保管データの暗号化) Yes (EnterpriseEditionのみ)
Yes (EnterpriseEditionのみ)
AmazonKMSを使用したストレージ暗号化
Yes (すべてのEdition) Yes (すべてのエディション)
SSL (通信データの暗号化) Yes Yes
データベースレプリケーション No Yes
ログシッピング No Yes
データベースミラーリング Yes (Multi-AZ) Yes
AlwaysOn 可用性グループ No Yes