Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

MySQL→Aurora移行セミナー

815 views

Published on

2017.1.25 セミナー資料

Published in: Technology
  • Be the first to comment

MySQL→Aurora移行セミナー

  1. 1. 2017.1.25 株式会社セクションナイン 吉田真吾 MySQL→Amazon Aurora移行 (パネルディスカッションに向けた前段資料)
  2. 2. 吉田真吾 n バックグラウンド 証券システム基盤開発 p 基盤開発、Oracleチューニングなど エバンジェリスト p 講演年間113回(2013年実績) p AWS設計・構築・移行(2014-2015) n 現在のしごと (株) セクションナイン 代表取締役社長 p AWSコンサルティング〜実装まで (株) Cloud Payment p 技術顧問 n 実績等 p AWSウルトラクイズ 初代チャンピオン (2012年) p AWS Samurai 2014 p AWSエキスパート養成読本 執筆 p AWS認定全資格(5種類) p Oracle Database 11g認定 (OCP, Performance Tuning)
  3. 3. AWS売上高 $0 $5,000 $10,000 2013 2014 2015 2016 (x100万) 予測 サービス数 l 2006 : 4 l 2007 : 5 l 2008 : 6 l 2009 : 11 l 2010 : 13 l 2011 : 20 l 2012 : 27 l 2013 : 35 l 2014 : 46 l 2015 : 61 l 2016:95※独自調べ APNプレミアコンサルティングパートナー 2013 17 2014 22 2015 28 2016 46 AWS Shield Amazon Athena AWS Glue AWS Batch AWS Step Functions Amazon Lex Amazon Polly Amazon Rekognition Amazon Lightsail AWS CodeBuild New Services & Enhancement 2017 55 AWS X-Ray AWS Snowmobile Amazon Pinpoint Amazon EC2 F1: FPGA Elastic GPU C5/R4/I3 T2: xlarge/2xlarge Systems Manager Lambda C# Lambda@Edge AWS Greengrass AWS Snowball Edge VMware on AWS Cloud AWS Personal Health Dashboard AWS OpsWorks for Chef Automate
  4. 4. https://www.youtube.com/watch?v=AyOAjFNPAbA 10年前のAmazonのサーバー規模を毎日追加 • 2015年AWSは ”2005年のAmazon (年商85億ドル)で 必要だったサーバー 規模” を毎日追加 • FORTUNE500社の サーバー規模の合計 分と同等 • Amazon Prime Day を ターゲットに調達
  5. 5. https://www.youtube.com/watch?v=AyOAjFNPAbA 自家製のルーター/電源制御盤/サーバー
  6. 6. Amazon Athena • S3のデータに直接ANSI SQLを実行できる • Presto: CSV、JSON、ORC、Parquet に対応 • ELBやCFなどS3に格納されているログのオン デマンドな解析に使える
  7. 7. https://aws.amazon.com/jp/organizations/ AWS Organizations • アカウントをグループ化 し、セキュリティや自動 化設定を一元管理できる • AWSアカウントの作成を 自動化できる • 一括請求の設定が簡単に できる
  8. 8. ITサービスマネジメントの規格 • ITIL (ITインフラストラクチャライブラリ) • 要求プロセス&ベストプラクティス集 • 現在 ITIL V3 • BS 15000 • 英国規格 • ISO/IEC 20000 • ISO規格 • ISO/IEC 20000-1:2011, ISO/IEC 20000-2:2011 • JIS Q 20000 • JIS規格 • JIS Q 20000-1:2012, JIS Q 20000-2:2012 • ITSMS適合性評価制度
  9. 9. .774 : 1 2 1 0 - : : 1 2 - / /2 7 7 4 7/ 2 1 2 - 1 27 7. 27 4 / ITILに基づくITサービス マネジメントを行うよう なエンタープライズ向け のMSP
  10. 10. Amazon Aurora MySQL compatible • MySQL 5.6 互換 PostgreSQL compatible • PostgreSQL 9.6 の SQL 方言および機能 をサポート • 現在プレビュー中
  11. 11. Amazon Aurora - MySQL compatible
  12. 12. 移行時のポイント 1. データベースエンジン選択 • パフォーマンス要件のフィージビリティ確認 • 基本的な機能要件のフィット&ギャップ 2. 同エンジン内バージョンアップ • クエリ一覧/机上検証/実機検証 3. 異種DB間移行 • 機能要件のフィット&ギャップ • Data Reduction(機密情報の保護・マスキング)要件など • ETL要否:Attunity Replicate、AWS Database Migration Service など
  13. 13. Quorumベースのストレージ
  14. 14. Quorumベースのストレージ Write 4/6 Read 3/6
  15. 15. Aurora
  16. 16. RDS for MySQL Aurora MySQL • MySQL 5.6.27: InnoDB / パラメータ:デフォルト • ストレージ: GP2(SSD) 100GB / 暗号化:あり(KMS) • Instance:db.r3.large • Aurora 5.6.10a: パラメータ:デフォルト • ストレージ: DB Cluster (Thin Provisioning) / 暗号化:あり(KMS) • Instance:db.r3.large TPC-C(OLTP)ベンチマーク 結果 • TPC-C:TPCによるオンライントランザクショ ン処理のベンチマークの方法 • ツール:HammerDB v2.21
  17. 17. 基本機能 • 可用性 99.99% • ストレージ暗号化に対応 • KMSを用いて暗号化(キーのローテートが可能、 サーバーサイド管理) • 特定時点への復元(リストア) • RPO : 最大で5分以内(復元可能な時刻表示がされ る)に戻せる • RTO : 別クラスタを作成してリストアするのでデー タ量やスキーマの数による
  18. 18. Aurora独自機能 • Quorum原理なストレージ • Thin Provisioning • 10GB〜64TB (10GB単位) • 冗長構成 • 最大15個のリードレプリカ(非同期レプリカ) →設定した優先度に応じた順にマスター昇格
  19. 19. Cluster Group Aurora Multi-AZ Availability Zone Availability Zone 同期 非同期 非同期
  20. 20. MySQLからAuroraへの移行方法 • DB無停止 • RDS for MySQLのAuroraリードレプリカから • レプリケーション製品 • AWS Database Migration Service (DMS) • Attunity Replicate, FlyData など • ダウンタイムあり • RDS for MySQLのスナップショットから • mysqldumpファイルから • mysqlコマンド • S3からリストア • MySQLのLOAD DATA FROM S3コマンド
  21. 21. (1) RDS for MySQLのAuroraリードレプリカから
  22. 22. (1) RDS for MySQLのAuroraリードレプリカから Aurora Aurora Aurora リードレプリカの作成
  23. 23. (1) RDS for MySQLのAuroraリードレプリカから Aurora Aurora レプリカラグ=0になるのを待つ
  24. 24. (1) RDS for MySQLのAuroraリードレプリカから Aurora マスターに昇格
  25. 25. 注意点 • 作成元のRDS MySQL は 5.5 以上 • 作成元のRDS MySQLのバックアップ設定がON (1<)になっていないと作成できない • 作成元のRDS MySQLのストレージを暗号化してい るとAuroraリードレプリカの作成ができない • ストレージ暗号化 • スナップショット作成時にも暗号化解除はできないので、 mysqldumpを使ってリストア
  26. 26. (2) RDS for MySQLのスナップショットから http://yoshidashingo.hatenablog.com/entry/2015/08/27/122129
  27. 27. (2) RDS for MySQLのスナップショットから http://yoshidashingo.hatenablog.com/entry/2015/08/27/122129
  28. 28. (2) RDS for MySQLのスナップショットから http://yoshidashingo.hatenablog.com/entry/2015/08/27/122129
  29. 29. (2) RDS for MySQLのスナップショットから Aurora http://yoshidashingo.hatenablog.com/entry/2015/08/27/122129
  30. 30. 同種間 Aurora MySQL Oracle
  31. 31. 同種間 Aurora MySQL
  32. 32. 異種間 Oracle Aurora A R M
  33. 33. その他 Oracle M l T l A D l S A 商品コード,売価, 商品名 商品コード, 特売コード, 販売日 商品名, 実売金額, 販売日 OLTP OLAP
  34. 34. Well-Architected Framework 新章追加:運用性(Operational Excellence)
  35. 35. 設計 • Well-Architected Framework • 基本の設計原則 • 五本柱 1. セキュリティ 2. 信頼性 3. パフォーマンス効率 4. コスト最適化 5. オペレーションの改善 https://aws.amazon.com/jp/whitepapers/ → AWS Well-Architected Framework
  36. 36. 一般的な設計原則 • キャパシティの需要予測をやめよう • 本番環境同等の環境でテストしよう • アーキテクチャ検証を簡単に行うために自動化 しよう • 漸進的にアーキテクチャを変更していこう • データドリブンアーキテクチャ • ゲームデイ(リハ)を通じて改善しよう https://aws.amazon.com/jp/whitepapers/ → AWS Well-Architected Framework
  37. 37. 1. セキュリティ • すべてのレイヤーでセキュリティを作り込もう • トレーサビリティを確保しよう • 最小権限の原則を実践しよう • 自分の担当範囲のセキュリティにフォーカスし よう(インフラはAWSにまかせる) • セキュリティを自動化しよう https://aws.amazon.com/jp/whitepapers/ → AWS Well-Architected Framework
  38. 38. 2. 信頼性 • リカバリー試験を行おう • エラー発生時には自動リカバリさせよう • 水平スケールさせることでシステムの可用性を 向上しよう • キャパシティを気にすることをやめよう • 変更管理を自動化しよう https://aws.amazon.com/jp/whitepapers/ → AWS Well-Architected Framework
  39. 39. 3. パフォーマンス効率 • 高度な技術を逐次採用するようにしよう • 一瞬でグローバル化できるようにしよう • サーバーレスアーキテクチャを採用しよう • たくさん検証しよう • 機械的な相性を考慮しよう https://aws.amazon.com/jp/whitepapers/ → AWS Well-Architected Framework
  40. 40. 4. コスト最適化 • 使った分だけ払うモデルに対応しよう • 規模のスケールの恩恵を受けよう • AWSはグロースに合わせて値段が安くなっていき ます • データセンターの運用にお金を使うのをやめよ う • システムごとのROIを可視化して分析しよう • マネージド・サービスを利用することで所有コ ストを減らそう https://aws.amazon.com/jp/whitepapers/ → AWS Well-Architected Framework
  41. 41. 5. 運用性 • コードで運用しよう • 運用プロセスをビジネス目標に合わせよう • 定期的/小規模/断続的に変更を加えよう • 予期しないイベントへの対応の試験をしよう • オペレーションイベントやエラーから学ぼう • オペレーション手順をつねに最新化しよう https://aws.amazon.com/jp/whitepapers/ → AWS Well-Architected Framework

×