SlideShare a Scribd company logo
1 of 31
Copyright © 2014 AGREX INC. All rights reserved.
事例紹介
プライベートネットワークにおける
FTPサーバの可用性向上
2015.02.26
札幌事業所
Copyright © 2014 AGREX INC. All rights reserved. 2
自己紹介
松井 美佳
(株)アグレックス 札幌事業所
・2014年入社
・AWSグループ所属
・AWS暦…7ヶ月!!
・好きなAWSサービス…Route53
・AWS認定資格…3月合格予定!!
↑札幌でも受験可能予定!!
2015年3月2日(月)から開始
毎週月曜日・水曜日
AWS利用前
AWS利用開始後
Copyright © 2014 AGREX INC. All rights reserved. 3
本日のお話
Copyright © 2014 AGREX INC. All rights reserved. 4
本日のお話
お客様よりこんなご要望・・・
社内からAWS上のFTPサーバにVPN経由で通信したい!!
FTPサーバは、24時間365日絶対に落ちないでほしい!!
FTPサーバの可用性を上げるために
冗長化しましょう!!
お客様
Copyright © 2014 AGREX INC. All rights reserved. 5
可用性向上を狙った冗長化
Copyright © 2014 AGREX INC. All rights reserved. 6
①ELBを使用した場合の冗長化
②Route53を使用した場合の冗長化
※ELBとは、Elastic Load Balancingの略。(=ロードバランサ)
※Route53とは、(とても親切な)DNSサービス。
可用性向上を狙った冗長化
ELBはこのマーク!
Route53はこのマーク!
DNSサーバがクエリの送受信に利用する「UDPポート53番」が由来。
Copyright © 2014 AGREX INC. All rights reserved. 7
①ELBを使用した場合の冗長化
※ELB:アプリケーションの負荷分散と可用性向上を同時に実現するサービス
EC2EC2EC2EC2
ELB ELB
継続アクセス可能!!
可用性向上を狙った冗長化
大量アクセス!?
障害発生!?
負荷分散!!
Copyright © 2014 AGREX INC. All rights reserved. 8
②Route53を利用した場合の冗長化
※1つのホスト名に2つの異なるIPアドレス設定可能+ヘルスチェック機能
→DNSフェイルオーバー機能!!
EC2EC2EC2EC2
Route53 Route53
AWSの冗長化
プライマリーIPへ接続!! セカンダリーIPへ接続!!
hoge.jp hoge.jp
54.aa.aa.aa 54.aa.aa.aa54.bb.bb.bb 54.bb.bb.bb
プライマリーIP セカンダリーIP
Copyright © 2014 AGREX INC. All rights reserved. 9
①ELBを使用した場合の冗長化
②Route53を使用した場合の冗長化
※ELBとは、Elastic Load Balancingの略。(=ロードバランサ)
※Route53とは、(とても親切な)DNSサービス。
可用性向上を狙った冗長化
ELBはこのマーク!
Route53はこのマーク!
Copyright © 2014 AGREX INC. All rights reserved. 10
①ELBを使用した場合の冗長化
→ELBはHTTP・HTTPS・TCP・SSLプロトコルでの通信が可能
(25,80,443,465,587,1024-65535)
→負荷分散=リクエストが分散
EC2EC2
ELB
FTPポート(21)からの通信ができません!!
可用性向上を狙った冗長化
※コントロールコネクション:ログイン・セッション
ファイル転送方法の命令・応答
※データコネクション :転送されるデータの送受信
コントロールコネクションとデータコネクションが
別のインスタンスに繋がる可能性がある!!
Copyright © 2014 AGREX INC. All rights reserved. 11
②Route53を使用した場合の冗長化
→ヘルスチェック元:世界各所に分散したHealth Checkerたち
→ヘルスチェックはインターネット越しに行われる
EC2EC2
Route53
プライベートネットワーク上では
ヘルスチェックがかけられない!!
可用性向上を狙った冗長化
Copyright © 2014 AGREX INC. All rights reserved. 12
困ったときは…
Copyright © 2014 AGREX INC. All rights reserved. 13
困ったときは…
助けを求めましょう!!
AWSの設計・運用方の
ノウハウがぎっしり!!
問題解決方法もあり!!
http://aws.clouddesignpattern.org/
Copyright © 2014 AGREX INC. All rights reserved. 14
CDP:Floating IP パターン
Floating IP パターン = IPアドレスの動的な移動
(例)
①障害発生した既存EC2インスタンスのEIPをデタッチ
②外したEIPを別のEC2インスタンスにアタッチ
○APIを利用してスクリプトを用いて自動化可能
○今回は、プライベートIPを付け替えたい…
→ネットワークインターフェース(ENI)の付け替え!!
※EIP(Elastic IP Address)とは、AWSで利用できる固定のグローバルIPアドレス
※ENI(Elastic Network Interface)とは、VPC のインスタンスにアタッチできる
仮想ネットワークインターフェイス
たったこれだけ!!
http://aws.clouddesignpattern.org/index.php/CDP:Floating_IP
%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3
Copyright © 2014 AGREX INC. All rights reserved. 15
FTPサーバ冗長化構成図①
監視サーバ
FTPサーバ①
FTPサーバ②
FTP通信
ヘルスチェック
ファイル同期
社
内
ネ
ッ
ト
ワ
ー
ク
VPN
eth0:172.16.11.10
eth0:172.16.11.20
eth1:172.16.11.30
CDP:Floating IP パターン
Copyright © 2014 AGREX INC. All rights reserved. 16
CDP:Floating IP パターン
FTPサーバ冗長化構成図②
FTPサーバ①
FTPサーバ②
FTP通信
ヘルスチェック
ファイル同期
社
内
ネ
ッ
ト
ワ
ー
ク
VPN
eth0:172.16.11.10
eth0:172.16.11.20
eth1:172.16.11.30
FTPサーバ①異常検知!!
ENI(eth1)デタッチ!!
ENI(eth1)アタッチ!!
監視サーバ
Copyright © 2014 AGREX INC. All rights reserved. 17
実装手順
Copyright © 2014 AGREX INC. All rights reserved. 18
実装手順
①FTPサーバ(EC2)を2台立てる!!
※FTPサーバソフト導入・設定
②監視用サーバ(EC2)を立てる!!
※立てる際にはIAM Roleを付ける
③ヘルスチェック+フェイルオーバー用のシェルスクリプトを作成!!
④cronで③で作成したのシェルが定期的に実行するよう設定!!
Copyright © 2014 AGREX INC. All rights reserved. 19
②監視用サーバ(EC2)を立てる!!
※立てる際にはIAM Roleを付ける!!
※IAM Roleとは、インスタンスに(任意の)APIのアクセス権限を
与えることのできる機能
以下の権限付与しています
・ENIアタッチ
・ENIデタッチ
実装手順
Copyright © 2014 AGREX INC. All rights reserved. 20
③ヘルスチェック+フェイルオーバー用のシェルスクリプトを作成!!
FTPサーバへの
ヘルスチェック
(障害検知された) インスタン
スからENIをデタッチ
もう片方のインスタンスへ
ENIをアタッチ
・pingでの疎通確認
・FTPログイン確認
etc... ※ENIのデタッチ確認後…
異常
正常
フェイルオーバー開始!!
フェイルオーバー完了!!
実装手順
開始
終了
Copyright © 2014 AGREX INC. All rights reserved. 21
課題点
Copyright © 2014 AGREX INC. All rights reserved. 22
課題点
①AZについて
※同一のAZでのみ実装可能
→ENIの付け替えが同一のAZ内でしかできないため
②スクリプトに用いているAWS APIのリクエストについて
③監視サーバー自身の障害対応について
Copyright © 2014 AGREX INC. All rights reserved. 23
②スクリプトに用いているAWS APIのリクエストについて
(例)
「ENIデタッチ!!」というAPIリクエストを飛ばす
作業が完了したかどうかは自力で確認するしかない!!
課題点
「ENIデタッチを受け付けました」という返答が返ってくる
「ENIデタッチが完了」したかどうかがわからない…
Copyright © 2014 AGREX INC. All rights reserved. 24
②スクリプトに用いているAWS APIのリクエストについて
FTPサーバへの
ヘルスチェック
(障害検知された) インスタンスから
ENIをデタッチ
もう片方のインスタンスへ
ENIをアタッチ
デタッチ確認作業
異常
正常
デタッチ確認作業 デタッチ確認
デタッチが
完了したか
10秒待つ
Yes
No
課題点
開始
終了
開始
終了
Copyright © 2014 AGREX INC. All rights reserved. 25
②スクリプトに用いているAWS APIのリクエストについて
★AWS CLIのバージョン1.6.0以降より、
リクエストが完了するまで待ち合わせる機能が利用可能!!
→サブコマンドに「--wait」を追加するだけ!!
現在「--wait」が利用可能なコマンドたち(2015/02/22確認)
・bundle-task-complete
・conversion-task-cancelled
・conversion-task-completed
・conversion-task-deleted
・customer-gateway-available
・export-task-cancelled
・export-task-completed
・instance-running
・instance-stopped
・instance-terminated
・snapshot-completed
・subnet-available
・volume-available
・volume-deleted
・volume-in-use
・vpc-available
・vpn-connection-available
・vpn-connection-deleted
今後増えていくことを期待!!
課題点
同期呼び出し
Copyright © 2014 AGREX INC. All rights reserved. 26
③監視サーバー障害対応について
【現在の障害対応】 (1)監視サーバの状態チェック
(2)監視サーバ障害発生
(3)サーバ管理者へ
アラートメールを飛ばす
(4)監視サーバのバックアップ(AMI)よりEC2復元
CloudWatch
Alert Mail
(SNS経由)
AMI
EC2
EC2サーバ管理者
監視
サーバ
課題点
(4)復旧完了!!
監視
サーバ
手間…
時間…
コスト…
Copyright © 2014 AGREX INC. All rights reserved. 27
③監視サーバー障害対応について
【将来的に導入したい障害対応】
AutoRecoveryで自動復旧!!
○導入手順
・CloudWatchのアラーム設定のみ
(StatusCheckFailed_Systemのメトリクスのみ設定可能)
(1)監視サーバの
状態チェック
(2)監視サーバ障害発生
CloudWatch EC2
監視
サーバ
課題点
(3)サーバをstop/start(=物理ホスト移動)
EC2
(4)復旧完了!!監視
サーバ
現在はUS-EASTのみ対応。
日本にも対応されれば、ぜひ導入したい!!
・ネットワーク接続の喪失
・システム電源の喪失
・物理ホストのソフトウェアの問題
・物理ホストのハードウェアの問題
Copyright © 2014 AGREX INC. All rights reserved. 28
(1)監視サーバの
状態チェック
(2)監視サーバ障害発生
CloudWatch EC2
監視
サーバ
補足:AutoRecoveryのユースケース
EC2
(4)復旧完了!!監視
サーバ
1.Webサーバのような「停めることを許されない」ケース
2.監視サーバのような「少しの時間停めてもかまわない」ケース
復旧まで、数分のタイムラグ発生!!
(3)サーバをstop/start(=物理ホスト移動)
非冗長化で…
Copyright © 2014 AGREX INC. All rights reserved. 29
最後に・・・
Copyright © 2014 AGREX INC. All rights reserved.
事例紹介
プライベートネットワークにおける
FTPサーバの可用性向上
2015.02.26
札幌事業所
事例(となる予定だった)紹介
THANK YOU

More Related Content

Similar to 20150226_JAWS_UG札幌

Cloud Foundryの件について@OpenStack Days Tokyo 2015
Cloud Foundryの件について@OpenStack Days Tokyo 2015Cloud Foundryの件について@OpenStack Days Tokyo 2015
Cloud Foundryの件について@OpenStack Days Tokyo 2015Ken Ojiri
 
AWS Transfer Family SFTP and FTPS
AWS Transfer Family SFTP and FTPSAWS Transfer Family SFTP and FTPS
AWS Transfer Family SFTP and FTPSKameda Harunobu
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しAkira Nagata
 
Lolipop server
Lolipop serverLolipop server
Lolipop serverJun Chiba
 
Serf という Orchestration ツール #immutableinfra
Serf という Orchestration ツール #immutableinfraSerf という Orchestration ツール #immutableinfra
Serf という Orchestration ツール #immutableinfraNaotoshi Seo
 
AWSオンリーで実現するIoTクラウド基盤
AWSオンリーで実現するIoTクラウド基盤AWSオンリーで実現するIoTクラウド基盤
AWSオンリーで実現するIoTクラウド基盤Godai Nakamura
 
AutoScale×ゲーム ~運用効率化への取り組み~
AutoScale×ゲーム ~運用効率化への取り組み~AutoScale×ゲーム ~運用効率化への取り組み~
AutoScale×ゲーム ~運用効率化への取り組み~Takashi Honda
 
IETF90 Web関連WG報告 #isocjp
IETF90 Web関連WG報告 #isocjpIETF90 Web関連WG報告 #isocjp
IETF90 Web関連WG報告 #isocjpKaoru Maeda
 
Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015
Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015
Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015Toru Yamaguchi
 
簡単!お手軽!!RDSでDR環境構築 - JAWS DAYS 2015
簡単!お手軽!!RDSでDR環境構築 - JAWS DAYS 2015簡単!お手軽!!RDSでDR環境構築 - JAWS DAYS 2015
簡単!お手軽!!RDSでDR環境構築 - JAWS DAYS 2015Naomi Yamasaki
 
OpsWorks aws-cli#11
OpsWorks aws-cli#11OpsWorks aws-cli#11
OpsWorks aws-cli#11Yuta Shimada
 
at+link サービスセミナー 20111209
at+link サービスセミナー 20111209at+link サービスセミナー 20111209
at+link サービスセミナー 20111209Hiroshi Bunya
 
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応v6app
 
Aws summits2014 nttデータaws上のシステムはこう作る!
Aws summits2014 nttデータaws上のシステムはこう作る!Aws summits2014 nttデータaws上のシステムはこう作る!
Aws summits2014 nttデータaws上のシステムはこう作る!Boss4434
 
2016年2月4日 空間OSの設計コンセプトと先端IT
2016年2月4日 空間OSの設計コンセプトと先端IT2016年2月4日 空間OSの設計コンセプトと先端IT
2016年2月4日 空間OSの設計コンセプトと先端ITaitc_jp
 
インターネットにおける動画配信の仕組み
インターネットにおける動画配信の仕組みインターネットにおける動画配信の仕組み
インターネットにおける動画配信の仕組みRyosuke Kubo
 
iPad & iPhoneからのリモートアクセスをより安全にするネットワーク構築術
iPad & iPhoneからのリモートアクセスをより安全にするネットワーク構築術iPad & iPhoneからのリモートアクセスをより安全にするネットワーク構築術
iPad & iPhoneからのリモートアクセスをより安全にするネットワーク構築術Atsushi Matsuo
 
JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築
JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築
JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築Tomo-o Kubo
 
VPC【VPN接続編]】
VPC【VPN接続編]】VPC【VPN接続編]】
VPC【VPN接続編]】Takuo Watanabe
 

Similar to 20150226_JAWS_UG札幌 (20)

Cloud Foundryの件について@OpenStack Days Tokyo 2015
Cloud Foundryの件について@OpenStack Days Tokyo 2015Cloud Foundryの件について@OpenStack Days Tokyo 2015
Cloud Foundryの件について@OpenStack Days Tokyo 2015
 
AWS Transfer Family SFTP and FTPS
AWS Transfer Family SFTP and FTPSAWS Transfer Family SFTP and FTPS
AWS Transfer Family SFTP and FTPS
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
 
Lolipop server
Lolipop serverLolipop server
Lolipop server
 
Jaws-warrantee
Jaws-warranteeJaws-warrantee
Jaws-warrantee
 
Serf という Orchestration ツール #immutableinfra
Serf という Orchestration ツール #immutableinfraSerf という Orchestration ツール #immutableinfra
Serf という Orchestration ツール #immutableinfra
 
AWSオンリーで実現するIoTクラウド基盤
AWSオンリーで実現するIoTクラウド基盤AWSオンリーで実現するIoTクラウド基盤
AWSオンリーで実現するIoTクラウド基盤
 
AutoScale×ゲーム ~運用効率化への取り組み~
AutoScale×ゲーム ~運用効率化への取り組み~AutoScale×ゲーム ~運用効率化への取り組み~
AutoScale×ゲーム ~運用効率化への取り組み~
 
IETF90 Web関連WG報告 #isocjp
IETF90 Web関連WG報告 #isocjpIETF90 Web関連WG報告 #isocjp
IETF90 Web関連WG報告 #isocjp
 
Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015
Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015
Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015
 
簡単!お手軽!!RDSでDR環境構築 - JAWS DAYS 2015
簡単!お手軽!!RDSでDR環境構築 - JAWS DAYS 2015簡単!お手軽!!RDSでDR環境構築 - JAWS DAYS 2015
簡単!お手軽!!RDSでDR環境構築 - JAWS DAYS 2015
 
OpsWorks aws-cli#11
OpsWorks aws-cli#11OpsWorks aws-cli#11
OpsWorks aws-cli#11
 
at+link サービスセミナー 20111209
at+link サービスセミナー 20111209at+link サービスセミナー 20111209
at+link サービスセミナー 20111209
 
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
 
Aws summits2014 nttデータaws上のシステムはこう作る!
Aws summits2014 nttデータaws上のシステムはこう作る!Aws summits2014 nttデータaws上のシステムはこう作る!
Aws summits2014 nttデータaws上のシステムはこう作る!
 
2016年2月4日 空間OSの設計コンセプトと先端IT
2016年2月4日 空間OSの設計コンセプトと先端IT2016年2月4日 空間OSの設計コンセプトと先端IT
2016年2月4日 空間OSの設計コンセプトと先端IT
 
インターネットにおける動画配信の仕組み
インターネットにおける動画配信の仕組みインターネットにおける動画配信の仕組み
インターネットにおける動画配信の仕組み
 
iPad & iPhoneからのリモートアクセスをより安全にするネットワーク構築術
iPad & iPhoneからのリモートアクセスをより安全にするネットワーク構築術iPad & iPhoneからのリモートアクセスをより安全にするネットワーク構築術
iPad & iPhoneからのリモートアクセスをより安全にするネットワーク構築術
 
JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築
JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築
JNSA西日本支部 技術研究WG AWSを使ったセキュアなシステム構築
 
VPC【VPN接続編]】
VPC【VPN接続編]】VPC【VPN接続編]】
VPC【VPN接続編]】
 

Recently uploaded

Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 

Recently uploaded (10)

Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 

20150226_JAWS_UG札幌

  • 1. Copyright © 2014 AGREX INC. All rights reserved. 事例紹介 プライベートネットワークにおける FTPサーバの可用性向上 2015.02.26 札幌事業所
  • 2. Copyright © 2014 AGREX INC. All rights reserved. 2 自己紹介 松井 美佳 (株)アグレックス 札幌事業所 ・2014年入社 ・AWSグループ所属 ・AWS暦…7ヶ月!! ・好きなAWSサービス…Route53 ・AWS認定資格…3月合格予定!! ↑札幌でも受験可能予定!! 2015年3月2日(月)から開始 毎週月曜日・水曜日 AWS利用前 AWS利用開始後
  • 3. Copyright © 2014 AGREX INC. All rights reserved. 3 本日のお話
  • 4. Copyright © 2014 AGREX INC. All rights reserved. 4 本日のお話 お客様よりこんなご要望・・・ 社内からAWS上のFTPサーバにVPN経由で通信したい!! FTPサーバは、24時間365日絶対に落ちないでほしい!! FTPサーバの可用性を上げるために 冗長化しましょう!! お客様
  • 5. Copyright © 2014 AGREX INC. All rights reserved. 5 可用性向上を狙った冗長化
  • 6. Copyright © 2014 AGREX INC. All rights reserved. 6 ①ELBを使用した場合の冗長化 ②Route53を使用した場合の冗長化 ※ELBとは、Elastic Load Balancingの略。(=ロードバランサ) ※Route53とは、(とても親切な)DNSサービス。 可用性向上を狙った冗長化 ELBはこのマーク! Route53はこのマーク! DNSサーバがクエリの送受信に利用する「UDPポート53番」が由来。
  • 7. Copyright © 2014 AGREX INC. All rights reserved. 7 ①ELBを使用した場合の冗長化 ※ELB:アプリケーションの負荷分散と可用性向上を同時に実現するサービス EC2EC2EC2EC2 ELB ELB 継続アクセス可能!! 可用性向上を狙った冗長化 大量アクセス!? 障害発生!? 負荷分散!!
  • 8. Copyright © 2014 AGREX INC. All rights reserved. 8 ②Route53を利用した場合の冗長化 ※1つのホスト名に2つの異なるIPアドレス設定可能+ヘルスチェック機能 →DNSフェイルオーバー機能!! EC2EC2EC2EC2 Route53 Route53 AWSの冗長化 プライマリーIPへ接続!! セカンダリーIPへ接続!! hoge.jp hoge.jp 54.aa.aa.aa 54.aa.aa.aa54.bb.bb.bb 54.bb.bb.bb プライマリーIP セカンダリーIP
  • 9. Copyright © 2014 AGREX INC. All rights reserved. 9 ①ELBを使用した場合の冗長化 ②Route53を使用した場合の冗長化 ※ELBとは、Elastic Load Balancingの略。(=ロードバランサ) ※Route53とは、(とても親切な)DNSサービス。 可用性向上を狙った冗長化 ELBはこのマーク! Route53はこのマーク!
  • 10. Copyright © 2014 AGREX INC. All rights reserved. 10 ①ELBを使用した場合の冗長化 →ELBはHTTP・HTTPS・TCP・SSLプロトコルでの通信が可能 (25,80,443,465,587,1024-65535) →負荷分散=リクエストが分散 EC2EC2 ELB FTPポート(21)からの通信ができません!! 可用性向上を狙った冗長化 ※コントロールコネクション:ログイン・セッション ファイル転送方法の命令・応答 ※データコネクション :転送されるデータの送受信 コントロールコネクションとデータコネクションが 別のインスタンスに繋がる可能性がある!!
  • 11. Copyright © 2014 AGREX INC. All rights reserved. 11 ②Route53を使用した場合の冗長化 →ヘルスチェック元:世界各所に分散したHealth Checkerたち →ヘルスチェックはインターネット越しに行われる EC2EC2 Route53 プライベートネットワーク上では ヘルスチェックがかけられない!! 可用性向上を狙った冗長化
  • 12. Copyright © 2014 AGREX INC. All rights reserved. 12 困ったときは…
  • 13. Copyright © 2014 AGREX INC. All rights reserved. 13 困ったときは… 助けを求めましょう!! AWSの設計・運用方の ノウハウがぎっしり!! 問題解決方法もあり!! http://aws.clouddesignpattern.org/
  • 14. Copyright © 2014 AGREX INC. All rights reserved. 14 CDP:Floating IP パターン Floating IP パターン = IPアドレスの動的な移動 (例) ①障害発生した既存EC2インスタンスのEIPをデタッチ ②外したEIPを別のEC2インスタンスにアタッチ ○APIを利用してスクリプトを用いて自動化可能 ○今回は、プライベートIPを付け替えたい… →ネットワークインターフェース(ENI)の付け替え!! ※EIP(Elastic IP Address)とは、AWSで利用できる固定のグローバルIPアドレス ※ENI(Elastic Network Interface)とは、VPC のインスタンスにアタッチできる 仮想ネットワークインターフェイス たったこれだけ!! http://aws.clouddesignpattern.org/index.php/CDP:Floating_IP %E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3
  • 15. Copyright © 2014 AGREX INC. All rights reserved. 15 FTPサーバ冗長化構成図① 監視サーバ FTPサーバ① FTPサーバ② FTP通信 ヘルスチェック ファイル同期 社 内 ネ ッ ト ワ ー ク VPN eth0:172.16.11.10 eth0:172.16.11.20 eth1:172.16.11.30 CDP:Floating IP パターン
  • 16. Copyright © 2014 AGREX INC. All rights reserved. 16 CDP:Floating IP パターン FTPサーバ冗長化構成図② FTPサーバ① FTPサーバ② FTP通信 ヘルスチェック ファイル同期 社 内 ネ ッ ト ワ ー ク VPN eth0:172.16.11.10 eth0:172.16.11.20 eth1:172.16.11.30 FTPサーバ①異常検知!! ENI(eth1)デタッチ!! ENI(eth1)アタッチ!! 監視サーバ
  • 17. Copyright © 2014 AGREX INC. All rights reserved. 17 実装手順
  • 18. Copyright © 2014 AGREX INC. All rights reserved. 18 実装手順 ①FTPサーバ(EC2)を2台立てる!! ※FTPサーバソフト導入・設定 ②監視用サーバ(EC2)を立てる!! ※立てる際にはIAM Roleを付ける ③ヘルスチェック+フェイルオーバー用のシェルスクリプトを作成!! ④cronで③で作成したのシェルが定期的に実行するよう設定!!
  • 19. Copyright © 2014 AGREX INC. All rights reserved. 19 ②監視用サーバ(EC2)を立てる!! ※立てる際にはIAM Roleを付ける!! ※IAM Roleとは、インスタンスに(任意の)APIのアクセス権限を 与えることのできる機能 以下の権限付与しています ・ENIアタッチ ・ENIデタッチ 実装手順
  • 20. Copyright © 2014 AGREX INC. All rights reserved. 20 ③ヘルスチェック+フェイルオーバー用のシェルスクリプトを作成!! FTPサーバへの ヘルスチェック (障害検知された) インスタン スからENIをデタッチ もう片方のインスタンスへ ENIをアタッチ ・pingでの疎通確認 ・FTPログイン確認 etc... ※ENIのデタッチ確認後… 異常 正常 フェイルオーバー開始!! フェイルオーバー完了!! 実装手順 開始 終了
  • 21. Copyright © 2014 AGREX INC. All rights reserved. 21 課題点
  • 22. Copyright © 2014 AGREX INC. All rights reserved. 22 課題点 ①AZについて ※同一のAZでのみ実装可能 →ENIの付け替えが同一のAZ内でしかできないため ②スクリプトに用いているAWS APIのリクエストについて ③監視サーバー自身の障害対応について
  • 23. Copyright © 2014 AGREX INC. All rights reserved. 23 ②スクリプトに用いているAWS APIのリクエストについて (例) 「ENIデタッチ!!」というAPIリクエストを飛ばす 作業が完了したかどうかは自力で確認するしかない!! 課題点 「ENIデタッチを受け付けました」という返答が返ってくる 「ENIデタッチが完了」したかどうかがわからない…
  • 24. Copyright © 2014 AGREX INC. All rights reserved. 24 ②スクリプトに用いているAWS APIのリクエストについて FTPサーバへの ヘルスチェック (障害検知された) インスタンスから ENIをデタッチ もう片方のインスタンスへ ENIをアタッチ デタッチ確認作業 異常 正常 デタッチ確認作業 デタッチ確認 デタッチが 完了したか 10秒待つ Yes No 課題点 開始 終了 開始 終了
  • 25. Copyright © 2014 AGREX INC. All rights reserved. 25 ②スクリプトに用いているAWS APIのリクエストについて ★AWS CLIのバージョン1.6.0以降より、 リクエストが完了するまで待ち合わせる機能が利用可能!! →サブコマンドに「--wait」を追加するだけ!! 現在「--wait」が利用可能なコマンドたち(2015/02/22確認) ・bundle-task-complete ・conversion-task-cancelled ・conversion-task-completed ・conversion-task-deleted ・customer-gateway-available ・export-task-cancelled ・export-task-completed ・instance-running ・instance-stopped ・instance-terminated ・snapshot-completed ・subnet-available ・volume-available ・volume-deleted ・volume-in-use ・vpc-available ・vpn-connection-available ・vpn-connection-deleted 今後増えていくことを期待!! 課題点 同期呼び出し
  • 26. Copyright © 2014 AGREX INC. All rights reserved. 26 ③監視サーバー障害対応について 【現在の障害対応】 (1)監視サーバの状態チェック (2)監視サーバ障害発生 (3)サーバ管理者へ アラートメールを飛ばす (4)監視サーバのバックアップ(AMI)よりEC2復元 CloudWatch Alert Mail (SNS経由) AMI EC2 EC2サーバ管理者 監視 サーバ 課題点 (4)復旧完了!! 監視 サーバ 手間… 時間… コスト…
  • 27. Copyright © 2014 AGREX INC. All rights reserved. 27 ③監視サーバー障害対応について 【将来的に導入したい障害対応】 AutoRecoveryで自動復旧!! ○導入手順 ・CloudWatchのアラーム設定のみ (StatusCheckFailed_Systemのメトリクスのみ設定可能) (1)監視サーバの 状態チェック (2)監視サーバ障害発生 CloudWatch EC2 監視 サーバ 課題点 (3)サーバをstop/start(=物理ホスト移動) EC2 (4)復旧完了!!監視 サーバ 現在はUS-EASTのみ対応。 日本にも対応されれば、ぜひ導入したい!! ・ネットワーク接続の喪失 ・システム電源の喪失 ・物理ホストのソフトウェアの問題 ・物理ホストのハードウェアの問題
  • 28. Copyright © 2014 AGREX INC. All rights reserved. 28 (1)監視サーバの 状態チェック (2)監視サーバ障害発生 CloudWatch EC2 監視 サーバ 補足:AutoRecoveryのユースケース EC2 (4)復旧完了!!監視 サーバ 1.Webサーバのような「停めることを許されない」ケース 2.監視サーバのような「少しの時間停めてもかまわない」ケース 復旧まで、数分のタイムラグ発生!! (3)サーバをstop/start(=物理ホスト移動) 非冗長化で…
  • 29. Copyright © 2014 AGREX INC. All rights reserved. 29 最後に・・・
  • 30. Copyright © 2014 AGREX INC. All rights reserved. 事例紹介 プライベートネットワークにおける FTPサーバの可用性向上 2015.02.26 札幌事業所 事例(となる予定だった)紹介