Upgrade to Pro — share decks privately, control downloads, hide ads and more …

JAWSさいたま_AWSで高品質_低負荷なシステム運用を実現する

fumiakiueno
October 26, 2019

 JAWSさいたま_AWSで高品質_低負荷なシステム運用を実現する

2019/10/26「JAWS-UG さいたま支部 第12回勉強会〜足を伸ばしてKubernetes祭〜」
で発表した資料です。
https://jawsug-saitama.doorkeeper.jp/events/97328

fumiakiueno

October 26, 2019
Tweet

More Decks by fumiakiueno

Other Decks in Technology

Transcript

  1. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 1 自己紹介

    名前: 上野 史瑛(うえの ふみあき) 所属: NRIネットコム株式会社 経歴: ・各種Webシステムのインフラ構築・運用 - サーバ、ネットワーク管理や構築がメイン - PCIDSS取得対応等にも参画 - オンプレとAWSの両方を経験 ・AWS技術検証や構成レビュー
  2. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 2 システム運用とは

    01 オンプレミスからAWS移行時のポイント 02 AWS運用サービス導入 初級・中級・上級編 03 AWS運用のまとめ、ポイント 04
  3. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 3 システム運用とは

    本番システム ユーザーに使用されている(本番稼働中)システムを、 ユーザーが必要なときにサービス提供できるように維持・管理すること また、維持・管理するために様々な作業を行うこと 具体的には・・ ・障害発生時にログ調査、復旧作業を行う ・サーバやネットワーク機器のリソース状況を確認する ・セキュリティパッチを適用する ・機能改善を行う などなど
  4. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 4 高品質なシステム運用とは

    高 品 質 信頼性・可用性が高い (障害が少ない) ・柔軟なリソース拡張、 入れ替えが可能 ・障害対応が迅速、手順が 整っている セキュリティ対策が 行われている ・定期的に最新パッチを適用 ・不要設定やユーザーの棚卸 ・適切な監視 システム状況の 可視性が高い ・各種ログを取得し一元管理 ・リソース状況の可視化 ・ソフトウェア利用の可視化 ・システム管理アクセスの 可視化 低 品 質 信頼性・可用性が低い (障害が多い) ・リソースの変更不可 ・障害対応に時間がかかる、 属人化している セキュリティ対策が 行われていない ・パッチが構築時のまま ・不要な設定が残っている システム状況の 可視性が低い ・必要なログを取得して いない ・配置場所がバラバラ ・管理アクセス状況が わからない
  5. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 5 低負荷なシステム運用とは

    低 負 荷 障害、検知数が少ない、 対応時に低工数 ・障害発生数が少ない ・不要な検知が無い ・管理対象のサーバが少ない ・対応マニュアルが整備済み セキュリティ対策 自動化、低工数 ・パッチ適用自動化 ・適用時のテスト自動化 ・適用するパッチが限定的で 明確にしている システム状況 がすぐに確認できる ・リソース状況がグラフ化、 Web化されている ・ログの可視化が一元管理 され、すぐに確認できる ・不正操作発生時に自動 検知される 高 負 荷 障害、検知数が多い、 対応時に高工数 ・障害発生数が多い ・不要な検知が多い ・管理対象のサーバが多い ・対応マニュアル無し セキュリティ対策 手動対応、高工数 ・パッチ手動適用 ・都度影響確認、手動テスト ・パッチの適用を都度検討 システム状況 の確認に時間がかかる ・リソース状況、ログを サーバ上で都度確認 ・操作ログを手動で確認
  6. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 6 システム運用とは

    01 オンプレミスからAWS移行時のポイント 02 AWS運用サービス導入 初級・中級・上級編 03 AWS運用のまとめ、ポイント 04
  7. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 7 やりがちなAWS移行パターン

    オンプレミス環境 WEBサーバ DBサーバ ジョブ監視 サーバ ログ管理 サーバ AWS 環境 WEBサーバ ジョブ監視 サーバ ログ管理 サーバ DBサーバ オンプレミス環境の構成をそのまま移行する(EC2、RDSが中心) ⇒移行はしやすいが、クラウドを活用できているとは言えない
  8. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 8 オンプレミスからAWS移行時のポイント

    • マネージドサービスを活用できているか(特に運用系) • サーバ環境だけでなく、 AWS環境の監視、セキュリティ対策ができているか • コスト(利用料)は上がりすぎていないか
  9. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 9 システム運用とは

    01 オンプレミスからAWS移行時のポイント 02 AWS運用サービス導入 初級・中級・上級編 03 AWS運用のまとめ、ポイント 04
  10. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 10 AWS運用サービス導入

    初級・中級・上級編 サービスも多く、いきなりAWSをフルで活用することは難しい・・ そこでレベルに応じたサービスの導入方法をご紹介! 初級 中級 上級 画面上の簡単な操作でOKのレベル 公式ドキュメント等の手順通りで実施できるレベル 自分で考えて設定やコーディングが必要なレベル または複数サービスの組み合わせが必要なレベル
  11. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 12 アカウント初回作成時にやること

    「アカウント設定」 ・ルートユーザのMFAを有効にする ・管理権限を持つIAMユーザーを作成する ⇒作成後、極力ルートユーザは使用しない 「コストの可視化」 ・IAMユーザーの請求情報アクセス許可(ルートユーザで実施) 参考:https://docs.aws.amazon.com/ja_jp/awsaccountbilling/latest/aboutv2/grantaccess.html ・CostExplorerの有効化(ルートユーザで実施) 参考:https://docs.aws.amazon.com/ja_jp/awsaccountbilling/latest/aboutv2/ce enable.html ・予算およびアラートの設定 参考:https://docs.aws.amazon.com/ja_jp/awsaccountbilling/latest/aboutv2/budgets managing costs.html 初級 中級 上級
  12. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 13 CloudTrail(証跡)の有効化

    AWSのAPI利用証跡の保存 デフォルトでは90日間のみイベントとして保存される 証跡の作成をしてS3またはCloudWatch Logsに保存 初級 中級 上級
  13. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 14 SecurityHubの有効化

    初級 中級 上級 AWS上のセキュリティ情報の集約
  14. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 15 GuardDutyの有効化

    初級 中級 上級 サンプルイベント AWS上の悪意のある操作や不正な動作を検知する
  15. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 16 AWS

    Configの有効化 初級 中級 上級 セキュリティグループの設定履歴 AWSの設定履歴が保存される
  16. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 17 各種ログの有効化

    初級 中級 上級 ログ機能が付くサービスは、基本的にログを有効化する 例えば以下のようなサービス CloudFront ELB VPC VPC Flow Logs アクセスログ アクセスログ S3
  17. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 18 CloudWatch

    初級 中級 上級 AWSのモニタリングツール まずは見てみる。下記の機能について理解する。 メトリクス – AWSのリソース状況履歴(グラフで確認可能) ログ – AWS各種リソースから出力されたログが保存されている アラーム – ログ、メトリクスに対して指定文字列、異常値で検知可能 イベント – Cron形式、イベント発生ベースでLambda等を実行可能
  18. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 19 CloudWatch

    サービスダッシュボード 初級 中級 上級 TOPの概要ボタンをクリックし、サービスを選択すると 指定したサービスのグラフが一覧で確認できる EC2サービスダッシュボード
  19. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 21 CloudWatch

    サービスダッシュボード の続き 初級 中級 上級 Kubernetes祭と言うことで・・ EKSのリソースがまるわかりのContainer Insightsもあります! ※少々設定が必要なので中級とします カスタムメトリクスになるので料金には注意
  20. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 22 CloudWatchアラームによる監視

    初級 中級 上級 対象メトリクス、検知すべき閾値、通知アクションを決定すればOK ELBでは5XXエラー数等、多くの標準メトリクスが存在する CloudWatchログを監視する場合は、メトリクスフィルターを作成する ログは検知数がグラフ化されるので、検知数に応じた監視も可能。 Alarm Metrics SNS 運用担当 CloudWatch
  21. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 23 CloudWatchイベントによる通知

    初級 中級 上級 SecurityHubやGuardDuty、Configルールのイベント検知を運用担当へ通知する。 Guardduty SecurityHub CloudWatch SNS 運用担当 SecurityHubにGuardDutyの情報も含まれる。 Configにも一部SecurityHubのルールが作成される。 そのため基本はSecurityHubの検知で良いが、 検知数や独自ルール等で通知の検討を行う。 Config Event (event-based)
  22. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 24 CloudWatchイベントによる

    定期処理実行 初級 中級 上級 Cron形式でLambda処理または SystemsManagerのRunCommandやAutomationを定期実行する。 (例えば夜間EC2再起動など) CloudWatch 再起動、リソース取得等 Event (time-base) Lambda EC2 Automation Run command Systems Manager
  23. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 25 CloudWatch

    ログ インサイト 初級 中級 上級 CloudWatchログの可視化 指定したフィールドや件数などを指定して抽出が可能
  24. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 26 Athena

    初級 中級 上級 S3上にあるログ等のファイルをSQLライクに可視化可能 CloudFrontやELBのアクセスログはサンプルクエリがAWSから提供されている S3 Athena
  25. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 27 Systems

    Manager Session Manager 初級 中級 上級 EC2へSSH接続無しでコマンド操作が可能 ・セキュリティグループのアクセス許可不要 ・CloudTrailによる接続履歴保存 ・S3、CloudWatch Logsに操作履歴保存 踏み台サーバ脱却へ EC2 Session Manager Systems Manager 運用担当 CloudWatch S3 操作 ログ
  26. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 28 Systems

    Manager Inventory 初級 中級 上級 EC2上にインストールされているソフトウェア名、バージョンを確認可能 ソフトウェアのExcel管理から脱却へ EC2 Systems Manager 運用担当 Inventory EC2
  27. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 29 Systems

    Manager Run Command 初級 中級 上級 複数サーバに同一のコマンドを一括実行可能 ソフトウェアの一括インストール等に活用する EC2 Systems Manager 運用担当 CloudWatch S3 実行 結果 Run command EC2
  28. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 30 Systems

    Manager Patch Manager 初級 中級 上級 メンテナンスウィンドウで決まった時間にサーバへ自動パッチ適用 ただし、本番稼働環境への自動適用は注意 ⇒重要度が高いもののみの適用や、スキャンのみ実施するなどの検討をする EC2 Systems Manager EC2 Patch manager Maintenance windows
  29. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 31 Amazon

    Inspector 初級 中級 上級 EC2上の脆弱性情報を一覧で取得 ネットワーク観点とサーバ観点があり、サーバ観点はAgentが必要 Inspector EC2 EC2 運用担当
  30. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 33 QuickSight

    初級 S3上の情報やAthenaで取得した情報を簡単にグラフ化、表による集計が可能 S3 Athena 中級 上級 QuickSight
  31. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 34 AWS

    WAF 初級 中級 上級 CloudFrontとELBに追加してアプリケーション攻撃対策が可能 自前でルールを作るか、難しい場合はマネージドルールを購入 CloudFrontのIPアドレス制限のみ使用してもOK WAF CloudFront ELB + + ・SQLインジェクション ・Cross-site スクリプティング ・IPアドレス制限 ・国別アクセス制限 ・サイズ制約 ・文字列正規表現 ・MarketPlaceマネージドルール
  32. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 35 AWS

    Configルールによる自動修復 中級 AWSの設定変更を検知して、自動で修復する 例えば、 ・CloudTrail証跡無効化を検知して自動有効 ・指定外のEC2インスタンスタイプ起動を検知して自動修正 ・IAMのMFA無効を検知してIAMポリシー削除(カスタムアクション) など 初級 上級 Cloudtrail Config 証跡無効検知 証跡有効 EC2 指定外の インスタンスタイプ インスタンス リサイズ IAM MFA無効検知 SNS Topic Lambda IAMポリシー 削除
  33. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 36 Code

    Pipelineによる自動リリース モジュールリリース作業を自動化する 手作業の負荷を下げ、ヒューマンエラーを無くす AWS構成もCloudFormationテンプレートを使用すれば管理可能 運用担当 開発アカウント ①git push Source Build Deploy WEB02 WEB01 Approve ③承認 検証/本番アカウント ②モジュール 作成 ④モジュール 配置 S3 CodePipeline CodeCommit CodeBuild CodeDeploy ELB EC2 EC2 中級 初級 上級
  34. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 37 ControlTowerによる

    複数アカウント管理 中級 自動でAWS推奨の各アカウントが作成される カスタムアカウントはアカウントファクトリー機能にて作成する ※既存のOrganizationには使えない(2019年10月現在) 初級 上級 マスター アカウント 監査 アカウント ログアーカイブ アカウント 本番サービス アカウント 開発サービス アカウント コアアカウント カスタムアカウント ControlTower
  35. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 38 各種サービスを活用した

    複数アカウント管理 中級 既存アカウントの場合(=ControlTowerが使えない場合)は、 各種サービスを複数アカウント用にカスタマイズして使用する 初級 上級 マスターアカウント 監査アカウント ログアーカイブアカウント 本番サービス アカウント 開発サービス アカウント コアアカウント カスタムアカウント Organization OU Guardduty SecurityHub Master Config SNS Topic S3 ・CloudTrailログ ・Configログ SSO
  36. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 39 システム運用とは

    01 オンプレミスからAWS移行時のポイント 02 AWS運用サービス導入 初級・中級・上級編 03 AWS運用のまとめ、ポイント 04
  37. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 40 マネージドサービスを活用する、組み合わせる

    WAF Shield Security group NACL KMS CloudWatch Guardduty SecurityHub Inspector VPC FlowLogs Cloudtrail Config Systems Manager SNS 攻撃対策 ネットワーク防御 データ保護 サーバ管理 可視化・モニタリング 通知 対象リソース CloudFront ELB VPC 対象リソース EC2 RDS ELB 対象リソース EC2 RDS S3 不正ネットワーク 不正データアクセス 状況監視 通知 運用担当 通知 マネージドサービスを活用することで、管理するサーバ(負荷)を減らす AWSを運用するためのサービスを積極的に導入する
  38. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 41 サーバレス化

    EC2を無くして、管理するサーバ(負荷)を減らす ※WEB部分やDB部分はアプリケーション担当とも要相談! WEBサーバ ジョブ監視 サーバ ログ管理 サーバ DBサーバ WEB DB CloudWatch Lambda Lambda API Gateway CloudWatch CloudWatch Event DynamoDB Systems Manager Step Functions S3 Athena Elastic Search QuickSight ジョブ ログ可視化 DB 監視
  39. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 42 監視項目はユーザ側に重点をおく

    重要項目(サービスが使えるかどうか)を監視することで品質をあげる 不要な監視検知を減らすことで、運用負荷を下げる CloudFront ELB EC2 RDS Route53 healthcheck or Lambda function CloudWatch Metrics ・サービス外形監視 ・エラーレート監視(5XX等) ・正常ホスト数 ・応答時間監視 ユーザー ユーザ側を 重点的に監視
  40. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 43 ログ、リソースの取得は幅広く、極力取得するように

    システムの状況をすばやく、細かく確認できるようにしておく CloudFront ELB EC2 RDS CloudWatch Metrics リソース状況の可視化 ユーザー S3 log CloudWatch Logs Athena QuickSight ログの可視化
  41. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 44 利用料には注意!

    使った分しかかからない・・→使った分だけかかってしまう 利用料の定期的な確認が重要 AWS Budgets AWS Cost and Usage Report AWS Cost Explorer CloudWatch Metrics 請求メトリクスを使用
  42. Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 45 まとめ

    低負荷で高品質、快適な運用ライフを目指しましょう! 本番システム 低負荷 な運用 高品質 なサービス