背筋を伸ばしてスタートアップするブログ

株式会社ペライチでCTOをやっています。

AWS Innovate Japan 2018を受講してみたら素晴らしかった

AWS Innovate Japan 2018とはなにか?

全36セッション×約30分のAWS公式オンラインカンファレンスです。初級者から上級者まで、トラックごとに興味のあるテーマを体系的に全て無料で学習できるようになっています。特にAWS始めたばかりで何から学んだらいいか分からないという方にとっては入り口としてすごくよさそう。

aws.amazon.com

上級者向けになると、コンテナやIoT、機械学習などについてハンズオン形式で学ぶことができて学習のとっかかりとしてとても良さそうだと思いました。

f:id:katsuki1207:20180923211235p:plain 公式サイトより引用

試しに、セキュリティについてのセッションとビッグデータ分析についてのセッションを受講してみたので、メモを記載しておきます。

Web システムで押さえておくべきセキュリティの考え方

f:id:katsuki1207:20180923221118p:plain

  • セッション概要
    • Web アプリケーションをAWS上で構成する際のベストプラクティスを紹介するセッション
    • AWSはじめてみて運用しているけどセキュリティ面考慮できてるかなんとなく不安な人向け
  • セキュリティ指針
  • Webシステムに求められるセキュリティ対策
    • サービス停止の抑止
      • DDoS対策
    • 情報漏えいの抑止
      • 脆弱性対策(インジェクション対策)
      • ネットワークセキュリティ
      • 認証とユーザー管理
      • 暗号化
      • アクセスコントロール
    • 攻撃と不正利用の検知
      • ログの取得、補完
      • 検知、分析、対策
  • サービス停止を狙ったDDoS攻撃の具体例
    • SYNフラッド
      • クライアントから意図的にACKを返さないことでサーバーは返答を持ち続ける
    • UDPフラッド
      • 発信元IPを偽装して大きなサイズのUDPパケットをランダムに攻撃対象に送り続ける
    • HTTPフラッド
      • 多数の端末にBotを仕掛ける。攻撃対象にHTTPのGetリクエストを大量に送信してリソースを枯渇させる
  • サービス停止の抑止対策
    • AWS Shield
      • 全パケットを検査
      • DDoS攻撃の約96%を軽減
      • 全ユーザーに無料提供
    • AWS CloudFront
      • コンテンツ配信用のキャッシュCDNとしてフロントに配置
      • レスポンス向上、負荷軽減
  • 脆弱性攻撃の例
    • SQLインジェクション
      • 意図しないSQLを実行させる
  • 脆弱性対策
    • AWS WAF
      • CloudFrontやELBと組み合わせて利用
      • トラフィックを監視(HTTP, URL, Cookie, クエリ文字列)
      • 不正なアクセスを遮断しレポート
        • サードベンダーが提供しているマネージドルールをインポート
      • IPアドレスのルールを登録することができる
        • ホワイトリスト、ブラックリスト
  • ネットワークセキュリティ
    • Amazon VPC(Virtual Private Cloud)
      • サブネット
      • セキュリティグループ
        • 一般的なファイヤーウォール
  • 認証とユーザー管理
    • Amazon Cognito
      • 既存のセッション管理による認証ではない
      • 認証をAWSのマネージド・サービスで実施
        • サインアップ、サインイン、サインアウトといった認証機能を提供
        • ユーザー管理、パスワード管理機能を提供
  • 暗号化
    • AWS Certificate Manager(ACM)
      • 証明書発行サービス
      • 無償で提供、自動で更新
    • AWS Key Management Service(KMS)
      • 暗号化キーを発行
      • EBSを暗号化
      • AWSのクラウド上に自社のデータを預けるのが不安なお客さんにとって使えるサービス
  • アクセスコントロール

    • AWS Secrets Manager
      • 必要なシークレットの保護
        • データベースの認証情報やAPIキー
      • ex. EC2のオートスケール時にシークレットを取り出し拡張するときとかに使う
    • AWS IAM
      • 各リソースへのアクセス権限
  • 不正利用の検知

    • Webシステムで取得、分析すべきログ
    • アプリケーションログ
      • Web/APサーバー、DBサーバー、CloudFront、ELBのログ
    • インフラストラクチャーログ
      • AWS内のネットワークログ
      • AWSサービスの操作ログ
  • ビギナー向けだと思ってどんなものかと思って聞いてたけどかなり具体的でしっかりした内容だった。一般的なセキュリティの攻撃手法のおさらいと、それぞれの脅威に対してどのような対策をAWS上で行えばいいのかさらうことができていい勉強になった。

何から始める?ビッグデータ活用

f:id:katsuki1207:20180923221115p:plain

  • ビッグデータ分析を始める前に
    • どんな分析をすれば効果があるかはやってみないと分からない。
    • 必要な情報は変わっていく
    • すばやく結果を出して改善していくことが重要
  • 巨大なデータを扱うには以下が必要
    • 巨大なストレージ容量
    • 非定形データへの対応
  • 一般的なデータ分析のフロー
    • 収集 -> データレイク(保存) -> 処理 -> 可視化
  • データレイク
    • 規模や形式にかかわらずすべてデータを加工することなく保存する単一のデータストア
    • AmazonS3に一元化して保存
    • 保存したS3データを用途別に加工、分析する際必要なときだけ専用のマネージドサービスを起動、プロビジョニングする
  • 分析の目的が分からない場合
    • 事前に確認すべきこと
      • どんなアウトプットを出せばいいか
      • どんなデータをどう加工したら求める結果が得られるか
  • 各ステップとAWSサービス
    • 収集
      • AWS Snowball: オンプレミスからの物理的データ移行が可能
      • AWS DMS: 既存DBからのデータ移行やレプリケーションが可能
      • Amazon Kinesis: ビデオやクリックログ等のストリーミングデータを連携可能
      • AWS IoT: デバイスからのセンサー情報などを連携可能
    • 保存
      • AmazonS3: 非定型データを蓄積できる。安価。できるだけ生データを保存する。
    • 処理
      • AWS Glue, Amazon EMR: データの事前加工。
      • Amazon RDS: RDBMSのマネージドサービス。
      • Amazon Rdedshift: データウェアハウス、データマート用。分析に特化したアーキテクチャ
      • Amazon Athena: S3に保管したデータを直接クエリする
    • 可視化
      • Amazon QuickSight: BIサービスとして連携してグラフなどに可視化が可能。
  • すばやく試すのにおすすめな構成
    • 手元のデータをS3にアップ→QuickSight経由でAthenaから可視化する
    • 安くミニマムに試せる。
  • ビッグデータ分析って主語が大きくてとっつきづらいイメージだったけど、具体的なAWSサービスでどう扱うかについて聞くことでかなりイメージがわいた。まずは試しにおすすめ構成を試してみたくなった。

まとめ

  • ハイクオリティなAWSの講義が完全無料で受けられるの本当有り難い。期間限定(10月10日(水)まで)なので、普段忙しくて後回しにしている人もこれを機に学習してみるといいと思います。
  • 余談ですが
    • 忙しい人はVideo Speed Controllerなどの拡張機能でスピード上げて聞くのがおすすめです
      • どの講師の方も丁寧にはきはきしゃべってくれるので2倍速でもはっきり聞き取れます
  • 受けたい方はこちらから申し込めます