2014 jaws days-最強のawsに_rtc宮崎
DESCRIPTION
JAWS DAYS2014 「最強のAWSに」複数VPCでのベストプラクティス【RTC、宮崎)の資料ですTRANSCRIPT
(C) Recruit Technologies Co.,Ltd. All rights reserved.
JAWS DAYS 2014 「これで最強のAWSに」
複数VPCでのベストプラクティス
2014年3月15日
株式会社リクルート テクノロジーズ 宮崎 幸恵
宮崎 幸恵 ★ み や ざ き さ ち え
【所属】 株式会社リクルートテクノロジーズ ITソリューション1部 全社向けのインフラ基盤を提供している部署です。 【仕事内容】 リクルート(当時)入社以来、全社向けのクラウド基盤の設計・構築・利用推進と支援に取り組んでいます。
【好きなAWSサービス】
VPC、IAM、Direct Connect
もうすぐ入社丸3年になります
旅行
お稽古
時事
ファッション
飲食
「選択・意思決定・行動」を支援する
情報サービスの提供しています
進学
就職
結婚
転職
住宅購入
車購入
出産/育児
Life Event ライフイベント
Life Style ライフスタイル
ショッピング
★リクルートグループのサービス
リクルートキャリア
リクルートジョブズ
リクルートスタッフィング
リクルート住まいカンパニー
リクルートライフスタイル
リクルートマーケティングパートナーズ
スタッフサービス・ホールディングス
リクルートアドミニストレーション
リクルートコミュニケーションズ
事業会社
機能会社 インフラ部門
大規模プロジェクト推進部門
UI設計/SEO部門
ビッグデータ機能部門
テクノロジーR&D部門
事業・社内IT推進部門
リクルート ホールディングス
クラウドチーム
主な 提供先
★リクルートテクノロジーズについて
基本構成は1サイト=1VPC ≒ 1アカウント
・・・
Elastic Load
Balancing
EC2 Instance
Web App
Server
VPC Subnet VPC Subnet
×
70以上….
ログ収集サーバ
利用者環境
共通基盤環境
S3
td-agent
ログ管理スクリプト
VPC間をVPNでつないでログを送っています
VPC Subnet
Elastic Load
Balancing
Web App
Server
VPC Subnet
td-agent
Zabbix親サーバ
共通基盤環境
Elastic Load
Balancing
VPC間をVPNでつないで監視しています
VPC Subnet
Zabbix子①
VPC Subnet
Zabbix子②
Availability Zone Availability Zone
利用者環境
URL監視はインターネットから Web App
Server
VPC Subnet
Zabbix-agent
LocalIPでの監視(死活、ポート、プロセス等)
Cacti
CactiもVPNでつないでいます
VPC Subnet
GUI画面はここで提供
Elastic Load
Balancing
Web App
Server
VPC Subnet
snmp-agent
共通基盤環境
利用者環境
管理APIサーバ
VPC Subnet
ログ収集サーバ
Zabbixサーバ
Availability Zone
S3
Cactiサーバ
Web App
Server
これがVPCベストプラクティス...!!
Region
TOKYO
California
開発Zabbixサーバ
AWSはサービス系インフラDCとはつなげています
管理APIサーバ
VPC Subnet
VPC Subnet
ログ収集サーバ
Cactiサーバ
Availability Zone
サービス系インフラDC (オンプレ)
認証機能をオンプレ側で共通利用
AWSを社内業務系のインフラとも一つVPCをつなげてみました
VPC Subnet
Availability Zone
社内業務系インフラ (オンプレ)
社内業務で利用+インターネット直接接続はなし
Proxy メールGW NFS VPN
Connection
・・・NATするしかないので、こうなりました
社内業務系インフラ (オンプレ)
サービス系インフラDC (オンプレ)
管理APIサーバ
VPC Subnet
ログ収集サーバ
Zabbixサーバ
Availability Zone
VPN
Connection
VPC Subnet
Availability Zone
Proxy メールGW NFS
VPN
Connection
NATでVPC間通信
サービス系インフラのIP体系
業務系インフラのIP体系
サービス系インフラDC (オンプレ)
管理APIサーバ
VPC Subnet
ログ収集サーバ
Zabbixサーバ
Availability Zone
VPN
Connection
Availability Zone
Proxy メールGW NFS
VPN
Connection
社内業務系インフラ
S3
Cactiサーバ
Web App
Server
VPN
Connection
これがVPCベストプラクティス...!!!
なぜベストな気がしないのか
理由1:各サーバへの通信経路がわけわからなくなる(作った本人でさえ、数十個のVPCで限界) 理由2:VPCが違う≒アカウントが違う、のため個別管理がとてもつらい 理由3:理由1,2の結果、何かで通信が途絶えたときに障害切り分け&影響範囲特定がとても大変になる。管理上もしんどい。
もっとベストにするには
案1:そもそもVPC分けるのをやめる → 無理。管理とセキュリティの問題。 案2:VPC間通信をやめる → 各VPCに監視サーバとか作ればいけますが、 効率化を目指すには現実的ではないですね..
お願いVPC!お願いIAM!
お願い1:なんとかVPCを分ける数を減らす → せめて同じVPCでGUI画面上見えるインスタンスを制限できるようにしてほしいのですが... お願い2:なんとかVPCを分ける数を減らす → VPCを一回作った後の拡張が大変で数が増えたりするので、VPCサブネットが柔軟に(とはい
いませんが多少変えられるように)なったらと思います...
お願いVPC!
お願い3:VPC間通信をシンプルに → 今はVPCごとにルーターのインスタンスがいるのですが、GWの機能をもっとパワーアップしてもらえば....ちょっとは(お金も)経路が減るかもしれないです