$30 off During Our Annual Pro Sale. View Details »

AWS and Serverless and Monitoring

AWS and Serverless and Monitoring

2017/01/24 Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)
にて「AWSとサーバーレスと監視」というタイトルでLT発表した際の資料です。

Yutaro Sugai

January 24, 2017
Tweet

More Decks by Yutaro Sugai

Other Decks in Programming

Transcript


  1. > "84ͱαʔόʔϨεͱ؂ࢹ
    Sansan株式会社 Eight事業部 インフラエンジニア 菅井祐太朗

    View Slide

  2. Copyright © 2014 Sansan, Inc. All rights reserved. 1
    > ⾃⼰紹介
    l Sansan株式会社 Eight事業部
    l インフラエンジニア
    l 活動(現在)
    l ⼀般社団法⼈LOCAL理事
    l 活動(以前)
    l Chef実践⼊⾨
    l Asakusa.rb
    l るびま(Rubyist向けWeb Magazine)編集
    l 最近、Go⾔語の勉強をはじめました。
    l 趣味は電⾞、⾶⾏機、⾳楽、料理、お酒、読書、ゲーム(最近
    はPC)、インターネット

    View Slide

  3. Copyright © 2014 Sansan, Inc. All rights reserved. 2
    > ⾃⼰紹介
    l ⼀般社団法⼈LOCAL理事
    l ⽬的: 北海道の技術者コミュニティの活動を⽀援し、盛り上
    げる
    l 活動
    l オープンソースカンファレンス北海道の運営
    l LOCALが⾏うイベントの企画運営
    l イベント⽀援
    l 学⽣交通費⽀援制度
    l 会場確保やスタッフなどイベント運営の補佐

    View Slide

  4. Copyright © 2014 Sansan, Inc. All rights reserved. 3
    > アジェンダ
    l Sansanの説明
    l SansanとAWS
    l EightとMackerel
    l Eightとサーバーレス
    l サーバーレスと監視
    l サーバーレスと権限管理

    View Slide

  5. Copyright © 2014 Sansan, Inc. All rights reserved. 4
    > Sansanの紹介
    ビジネスの出会いを資産に変え、
    働き⽅を⾰新する

    View Slide

  6. Copyright © 2014 Sansan, Inc. All rights reserved. 5
    > 「新しい働き⽅」を体現する神⼭ラボ

    View Slide

  7. Copyright © 2014 Sansan, Inc. All rights reserved. 6
    > 法⼈向け名刺管理サービス「Sansan」
    営業を強くする名刺管理

    View Slide

  8. Copyright © 2014 Sansan, Inc. All rights reserved.
    7
    > Sansanの仕組み
    ① 名刺をスキャン ② OCR処理&オペレーター⼊⼒
    OCRとオペレーターによる多重⼊⼒
    ③データベース化
    • テキストデータ
    • 画像データ
    ④アプリケーションで活⽤
    名刺の検索・閲覧・編集
    ②データ送信
    インターネット
    お客様
    Database
    名刺を
    “資産”として管理
    名刺を
    資産として管理
    ⼊⼒サービス
    クラウド
    サービス

    View Slide

  9. Copyright © 2014 Sansan, Inc. All rights reserved.
    8
    > 業種、規模問わず4,000社が導⼊

    View Slide

  10. 9

    View Slide

  11. Copyright © Sansan, Inc. All rights reserved.
    Eightのしくみ
    10
    スマホで撮影 ⼈⼒で⼊⼒ スマホ & PCで活⽤

    View Slide

  12. Copyright © Sansan, Inc. All rights reserved.
    情報は常に最新
    名刺の変更を⾃動でお知らせ
    Eightのしくみ
    11
    Eightでつながると、相⼿が転職や昇進などで
    名刺を変更した場合に、通知が届きます。

    View Slide

  13. Copyright © Sansan, Inc. All rights reserved.
    メッセージで気軽に連絡
    新しいビジネスコミュニケーション
    Eightのしくみ
    12
    メールや電話よりも気軽に相⼿に連絡でき、
    スムーズなコミュニケーションが可能です。

    View Slide

  14. Copyright © Sansan, Inc. All rights reserved.
    Eightのしくみ
    13
    ビジネスプロフィール
    オンライン名刺として活⽤
    プロフィールはWeb上に公開できます。
    メールの署名などに⼊れて、
    オンライン名刺としてもご利⽤できます。

    View Slide

  15. Copyright © 2014 Sansan, Inc. All rights reserved. 14
    > SansanとAWS
    会社の各サービスにAWSを使⽤しています

    View Slide

  16. Copyright © 2014 Sansan, Inc. All rights reserved. 15
    > EightとMackerel
    l Eightでは、監視サービスにMackerelを使⽤しています
    l これまではNagiosを使っていましたが、1⽉中に完全移
    ⾏をしました

    View Slide

  17. Copyright © 2014 Sansan, Inc. All rights reserved. 16
    > EightとMackerel
    l 監視対象
    Amazon EC2 Elastic Load
    Balancing
    Amazon Lambda
    DynamoDB
    Amazon RDS
    ElastiCache
    Amazon Redshift
    Amazon
    CloudSearch
    Amazon SQS
    Amazon Kinesis

    View Slide

  18. Copyright © 2014 Sansan, Inc. All rights reserved. 17
    > EightとMackerel
    l 監視項⽬(EC2)
    l Connectivity
    l プロセス監視
    l ロードアベレージ
    l swap
    l といった基本的なものたち
    l + Nagios 時代からのチェック監視
    Amazon EC2

    View Slide

  19. Copyright © 2014 Sansan, Inc. All rights reserved. 18
    > Eightとサーバーレス
    ここまでは、これまで⼀般的だったサーバ監視
    ここからは、サーバーレスに関する監視について

    View Slide

  20. Copyright © 2014 Sansan, Inc. All rights reserved. 19
    > サーバーレス化
    Eightでのリコメンドアーキテクチャを
    バッチからサーバーレス化することで
    刷新しリアルタイムに処理できるようにしました

    View Slide

  21. Copyright © 2014 Sansan, Inc. All rights reserved. 20
    > リコメンド

    View Slide

  22. Copyright © 2014 Sansan, Inc. All rights reserved. 21
    > サーバーレス化
    旧:⽇次バッチ
    新:リアルタイム・ストリーミング・アーキテクチャ
    データ加⼯
    データ収集 レーティング
    データ
    キャッシュ
    リコメンド
    ⽣成
    配信
    ユーザ⾏動
    24時間
    リアルタイム
    データ加⼯
    ⾏動ログ
    ユーザ⾏動 レーティング
    データ
    リコメンド
    ⽣成
    キャッシュ 配信

    View Slide

  23. Copyright © 2014 Sansan, Inc. All rights reserved. 22
    > サーバーレス化
    この後説明するLambdaとKinesisは
    このサーバレス化において中核を担うサービスです

    View Slide

  24. Copyright © 2014 Sansan, Inc. All rights reserved. 23
    > EightとMackerel
    l Lambdaとは
    l アプリケーション実⾏環境
    l フルマネージド
    l サーバの管理が不要
    l 他サービスと連携できる
    l API Gateway, S3, DynamoDB, Kinesis Stream等…
    l 使った分だけ課⾦される
    Amazon Lambda

    View Slide

  25. Copyright © 2014 Sansan, Inc. All rights reserved. 24
    > EightとMackerel
    l 監視項⽬(Lambda)
    l 実⾏時間
    l エラー数
    l 呼び出された回数
    l 同時実⾏数制限を超えた数
    Amazon Lambda

    View Slide

  26. Copyright © 2014 Sansan, Inc. All rights reserved. 25
    > EightとMackerel
    l Kinesis(Stream)とは
    l ストリームデータを扱う
    l フルマネージド
    l いわば、データを流すパイプ
    l しかもスケールするパイプ
    Amazon Kinesis

    View Slide

  27. Copyright © 2014 Sansan, Inc. All rights reserved. 26
    > EightとMackerel
    l 監視項⽬(Kinesis)
    l 流⼊してきたバイト数
    l 流⼊してきたレコード数
    l 読み取り操作で制限値を超えちゃった数
    l 書き込み操作で制限値を超えちゃった数
    l 読み取り中のレコードと最新のレコードとの時差(遅延)
    Amazon Kinesis

    View Slide

  28. Copyright © 2014 Sansan, Inc. All rights reserved. 27
    > サーバーレスなシステムの管理
    l ピタゴラ装置の監視をどうやるか
    l 各サービスが連携して動作する
    l 全体像を⾒た上でどこがつまるとまずいのかアプリケーションエ
    ンジニアと認識を合わせる必要があった
    l 監視項⽬を出してもらって実際の設定を調整した
    l 権限管理がわりと⼤変
    l どこにロールを挟み込めるのか確認
    l どのようなアクションをしたいのかアプリケーションエンジニア
    からヒアリング

    View Slide

  29. Copyright © 2014 Sansan, Inc. All rights reserved. 28
    > サーバーレスと権限管理
    l 権限
    l 何のサービスが
    l 何のアクションを
    l どのリソースに対して⾏いたいのか設定する
    28
    新:リアルタイム・ストリーミング・アーキテクチャ
    データ加⼯
    データ収集 レーティング
    データ
    キャッシュ
    リコメンド
    ⽣成
    配信
    ユーザ⾏動
    リアルタイム

    View Slide

  30. Copyright © 2014 Sansan, Inc. All rights reserved. 29
    > サーバーレスと権限管理
    l 権限(例)
    l Lambdaが
    l DynamoDBのDescribeStream, GetItemなどなどを
    l ○○テーブルたちに⾏いたい
    29
    新:リアルタイム・ストリーミング・アーキテクチャ
    データ加⼯
    データ収集 レーティング
    データ
    キャッシュ
    リコメンド
    ⽣成
    配信
    ユーザ⾏動
    リアルタイム

    View Slide

  31. Copyright © 2014 Sansan, Inc. All rights reserved. 30
    > サーバーレスと権限管理
    l 権限管理
    l つまりは、⼈やグループだけでなく
    l アプリケーション動作に必要なロールを管理するということ
    l Eightでは、Terraformを使って権限を管理している
    30

    View Slide

  32. Copyright © 2014 Sansan, Inc. All rights reserved. 31
    > まとめや感想
    l サーバーレスなものたちの管理⽅法はまだ決まってない
    感じが強い
    l デプロイ系
    l 監視など
    l ⼿探り感はあったが必要な監視やデプロイツールを考える過程
    でのチーム内ディスカッションはいい経験だった
    l ほかチームでのアーキテクチャ選定時に、⾃分たちのチームで
    の知⾒を広めることができてよかった
    l ほかチームもサーバーレス化の検討をしていていい影響を与え
    られた
    l アプリケーションエンジニアにServerless Confで発表しても
    らおうと思っています
    31

    View Slide

  33. Copyright © 2014 Sansan, Inc. All rights reserved. 32
    > おまけ
    もうすこしだけお付き合いください。

    View Slide

  34. Copyright © 2014 Sansan, Inc. All rights reserved. 33
    > Sansanでは
    ⼀緒に働いてくれる⼈を募集中です!

    View Slide

  35. Copyright © 2014 Sansan, Inc. All rights reserved. 34
    > 最後にエンジニアとデザイナーの話
    .NET
    Ruby
    infra
    iOS Android
    R&D
    Data Analyst
    エンジニアの勢⼒図こんな感じです。
    各開発部⾨及び他1部署にデザイナーはいます。

    View Slide

  36. Copyright © 2014 Sansan, Inc. All rights reserved. 35
    > エンジニア・デザイナー補助制度
    書籍購⼊
    費⽤補助
    環境整備補助 ソフトウェア購⼊補助
    端末購⼊補助
    ※iOS/Androidエンジニア限定
    勉強会参加補助 有料カンファレンス
    参加補助

    View Slide

  37. View Slide