やーまんぶろぐ

気が向いた時にだけ書くブログ

AWS Black Belt Online Seminar AWS上でのログ管理 Confirmation 参加ログ

AWS上でのログ管理 Confirmationをオンラインで参加したので、参加ログを残しておきます。

ログ処理の全体像

  1. データ処理と保存(S3, Kinesis, DynamoDB, RDS)
  2. イベント処理(Lambda, KCL apps)
  3. データ処理(EMR)
  4. データ分析(Redshift)

BIツールが公式で出たのでチェックしましょう。
AWSのBIツール Amazon QuickSight がついにリリースされました! – サーバーワークスエンジニアブログ

今回は「データ処理と保存」の部分がメインでした。

AWSのサービスから出力されるログ

CloudWatch Logs

  • 各OS環境にLogAgentを入れることでログを取れる
  • VPC Flow, CloudTrailなどのAWSサービスのログを取れる
  • 通知, エクスポート, 可視化する

CloudTrail

  • API操作を記録するサービス
  • S3にロギングデータを保存

VPCフローログ

  • VPC内のネットワークのログが取得可能
  • NACL, SGでの許可と禁止のトラフィックを見れる

S3バケットログ

CFのアクセスログ

  • AccessLog。利用傾向分析、データ可視化と詳細な障害分析

OSやアプリケーションなどの各環境の固有のログ

  • リアルタイムに処理しなくてもいいならバッチ取得
  • リアルタイムな処理を行う必要があるのであればストリーム取得

ログ転送

ログファイル転送

  • scpで送信
  • スケールを考えたり、SPOFになったり、リトライしたりするので非推奨

syslogエージェント

  • pull型からpush型にすることが可能
  • ログ収集サーバのスケールは難しい

ミドルウェア(fluentd)推奨

  • ログ収集管理ツール
  • rubyを使用した柔軟性の高い入出力プラグイン
  • バッファリング機能
  • ログのルーティングが非常にわかりやすい

マネージドサービスの利用

Kinesis Streams
  • 生成されるデータをリアルタイムに近い状況でデータ処理部に伝送
  • AWSサービスとの簡単インテグレーション
  • 並列処理することが可能
Kinesis firehose
  • 管理不要。アプリ、インフラの管理がない(Firehoseを使えばLambdaが不要になる(東京リージョンにない))
  • データストアとダイレクトに統合
  • シームレスにスケール
Fluent plugin for Amazon Kinesis
  • fluentdからKinesisにログを直接送信するためのプラグイン
  • Aggregateサーバが不要になる
Cloud Watch Logs
  • agentによって単純にログを送信できる
  • 複雑なことをしないのであれば運用コストは低い
Amazon Mobile Analytics
  • モバイルの行動ログを取得可能

クックパッドの資料。秒間数万のログを処理する。
speakerdeck.com

ログの保存

  • 全てのログはS3へ貯め続ける

ログの活用

  • Elasticsearch + Kibana Dashboardによる可視化
  • Kinesis Analytics(東京リージョンにきていない)。SQLをストリームに適用
    • 簡単にデータストリームへ接続し標準的なSQLを適用可能
    • リアルタイムアプリケーションを構築
    • 秒以下のレイテンシーでストリーミングデータを得る
    • 弾力的にスクール
    • Gloabalにエンドポイントを持っていて、S3リージョン間レプリケーションを持っているので、ログ基盤をバージニアに作るのもあり
    • gunosy ログデータを拡充する。Analytics, firehoseを使っている。

data.gunosy.io

最後に

ログ基盤をバージニアで作ることで、東京リージョンにまだないサービスをフルで活用できるというのは面白そうでした。
ログまわりはまだ手になじんでないので、少し触って見たいと思います。

AWS CloudFormation参加ログ

[Black Belt Online Seminar] AWS CloudFormation 参加ログです。

[Black Belt Online Seminar] AWS CloudFormation

基本的なことは割愛して、新しく知ったあたりをメモ。

Serverless

  • SAM(Serverless Application Model)
  • Transform: AWS::Serverless-2016-10-31を追加して拡張して使用する
  • Lambda(AWS::Serverless::Function), api gateway(AWS::Serverless::Api), dynamoDB(AWS::Serverless::SimpleTable)を使用

YAMLサポート

  • CloudFormation Designerを除く全ての機能と関数をサポート
    • 図示できないのは残念。JSONに変換する手間があると。
  • 読みやすい書きやすい
  • コメントの追加が可能
  • UserDataプロパティを書く際に簡単になった。Sub関数を使用してワンライナーで書ける。
  • JSON -> YAMLサードパーティ製の何かを使いましょう。

CloudFormer

  • 構築済の環境からテンプレートを作成するツール
  • 生成されたテンプレートを手修正し、最終的なテンプレートを作成することを推奨
  • CloudFormationでsample templateからインスタンスを作成します。作成されたWebアプリケーションからテンプレートを作成することができます。
    • インスタンスを作成するのか。チラ見して探せなかったから無視していた
  • CloudFormerで作成したテンプレートを CloudFormation Designerで図にできる
    • これは試してみたい

どのように作成する? (クロススタック 含む)

  • 1テンプレート、1スタック
    • 増えると大変
  • 個別テンプレート、1スタック
    • レイヤーで分ける。例では3層を分けている。ノードとネットワークを分けたりもする
    • ネストのこと。今はこれで作成している。
  • 個別テンプレート、個別スタック
    • クロススタック参照。スタックから別のスタックへリソースをエキスポート
    • ネットワークのIDなどを他のスタックとやりとりしなければならない
    • OutputsにExportした値をImportValueで参照してひっぱって来ることができる
    • これは試したい

チェンジセット

  • アップデートするときに影響するリソースが確認できるようになった

Stackの更新スタイル

  • in-place
    • 単純にアップデート
  • blue-green
    • もう一つ作ってからDNS切り替える

ITILについて学ぼう

ITILとはITサービスマネジメントにおけるベストプラクティス(成功事例)をまとめたフレームワークのことらしいです。
1989年に公表されているということで昔からある言葉みたいですが、私は初めて聞きました。
ITサービスをマネジメントすることで、ビジネス貢献効果が期待できるとのことでこれから学んでいきたいと思います。

勉強本

まずはこちらを読んでみたいと思います。

ITILの基礎 -ITILファンデーション(シラバス2011)試験対応-

ITILの基礎 -ITILファンデーション(シラバス2011)試験対応-

問題集

無料のWeb問題集があったので、こちらで習熟度を確認したいと思います。
tokyo.cloudapp.net

試しに一回解いてみたところ16/20の正解率でした。
知っている言葉もあり考え方は大きくずれてなかったものの、初めて言葉も多く学ぶ価値はあると感じました。

勉強メモ

Web問題集で出てきたワードを調べたのでメモしておきます。

RACIモデル

  • 実行責任者(R:Responsible) - 該当する業務の遂行に責任を持つ実行責任者
  • 説明責任者(A:Accountable) - 該当業務の結果に責任を持つ説明責任者
  • 協議先(C:Consulted) - 相談を受け、意見を求められる複数の人や組織
  • 報告先(I:Informed) - 進捗について最新の情報を受け取る人や組織

CSIの継続的サービス改善モデル

  1. ビジョンは何か?
  2. 我々はどこにいるのか?
  3. 我々はどこを目指すのか?
  4. どのようにして目標を達成するのか?
  5. 我々は達成したのか?
  6. どのようにして推進力を維持するのか?

改善プロセス

  1. 改善の戦略を識別する
  2. 測定するものを定義する
  3. データを収集する
  4. データを処理する
  5. 情報とデータを分析する
  6. 情報を提示して利用する
  7. 改善を実施する

インシデント

  • ITサービスに対する計画外の中断、または、ITサービスの品質の低下

障害

  • そのインシデントを引き起こす原因の一つ
    • ハードウェア障害、ソフトウェア障害、ヒューマンエラーが原因の障害

運用コントロール

変更管理の7つのR

  1. RAISED その変更を(要請)したのは誰?
  2. REASON 変更する(理由)は?
  3. RETURN 変更をすることによって、何を(得られる)のか?
  4. RISK   変更することによる(危険性・不確実性)は?
  5. RESOURCE 変更を実施するときに必要になる(リソース)は?
  6. RESPONSIBLE 変更における(責任)は誰?
  7. RELATIONSHIP ほかの変更との(関係)は?

アクセス管理

  • 権限管理またはID管理と呼ばれることがある

サービス・カタログ管理

  • すべてのサービスに関する一貫した単一の情報源を提供する

プロセスの特性

  • 測定可能、特定の結果、顧客、特定のイベントに対応する

サービス・レベル・アグリーメント(SLA)

  • ITサービス・プロバイダと顧客との間で交わされる合意。ITサービスについて記述し、サービスレベル目標値を文書化して、ITサービス・プロバイダおよび顧客の責任を規定したもの

サービス・レベル・目標(SLO)

  • SLOとは、通信サービスやITサービスなどで、事業者がサービスの品質についての目標を定めたもの。
    • 提供するサービスやサービスを構成するシステムや機材などに関して、性能や可用性、データ管理、運用体制、サポート体制、セキュリティなどの目標水準や目標値を設定し、利用者に提示する。

コソーシング

  • サービスの設計、開発、移行、保守、運用、サポートなどについて、複数の外部組織や内部組織が連携し、サービスを提供する

データセンターやコールセンターなど

サプライヤ・マネージャ

  • サプライヤとの外部委託契約、合意、またはSLAいずれもが、事業要件と整合していることを確実にする

財務管理

  • 提供するサービスの収支や課金の妥当性を管理する

サービスマネジメント

  • 顧客に対し、サービスの形で価値を提供する組織の専門能力の集まり

最後に

無料の問題集があるのは嬉しいですね。お金かかるので資格を取るつもりはないけど継続して勉強していきたいと思います。

www.globalknowledge.co.jp

と思ったら、「世界で通用する資格2016」の「資格保有者の平均年収TOP15」に入ってる資格なんですね。
あまり資格に興味がなかったのですが、少し悩みますね。。2万を超える価値があるのか。。

おすすめ自炊レシピ 5選 + 1

楽天レシピに登録してから2ヶ月が過ぎました。
yamano3201.hatenablog.jp

全然料理したことなかったけど、やってみると楽しいですね(^^)

今日作った料理を合わせて、レシピ数が28個になりました。
自分にしてはけっこう頑張った方だと思います。

今までに作ったレシピの中でおすすめの自炊レシピを5 + 1個紹介したいと思います。

簡単!鶏の生姜焼き!

recipe.rakuten.co.jp
私のレシピの中で、圧倒的に一番アクセスのある人気料理です。
生姜がきいておいしいです。

簡単!肉味噌炒めオムレツ

recipe.rakuten.co.jp
最初に投稿した料理です。
肉味噌炒めは簡単にできて万能なのでおすすめです。

簡単!白身魚のムニエル!

recipe.rakuten.co.jp
数少ない魚料理です。
料理酒で臭みを飛ばすのがポイントです。

高野豆腐とピーマンのニラ玉

recipe.rakuten.co.jp
高野豆腐とニラの相性抜群です。

簡単!ポトフ!

recipe.rakuten.co.jp
味濃いのが多いので、数少ない薄味レシピです。

おまけ

簡単!蒙古タンメンチーズ!

recipe.rakuten.co.jp
蒙古タンメンのインスタントラーメンにチーズをつっこむだけです。
自炊ではないけど、かなりおいしいのでおすすめです。

最後に

あまり料理しない人も参考にしてみてください。

【AWS Black Belt】Elastic Load Balancing Update - Application Load Balancer 参加ログ

AWS Black Belt】Elastic Load Balancing Update - Application Load Balancer 参加ログです。

[Black Belt Online Seminar] Elastic Load Balancing Update

2016/10/17 リンク添付

www.slideshare.net

レイヤー7 のコンテントベースのロードバランサーであるApplication Load Balancer(ALB)の説明でした。

レイヤー4ベースのロードバランサーについては前回メモした通りなので割愛。
yamano3201.hatenablog.jp

ALBで追加変更となった部分を箇条書きしていきます。

  • 呼び方が変わりました。今までのELBをCLB(Classic LB)と呼び、ELBと呼ぶと追加となったALBとCLBを含んだものを指します。
  • ALBは全てクロスゾーン負荷分散が有効になっています
  • アプリケーションが作成したCookieによるスティッキーセッションはALBではできません
    • ELBが作成したCookieでスティッキーセッションはCLB同様でできます
  • ALBの場合はマネジメントコンソールからconnection draining されていることが確認できるようになりました
    • connection drainingとは、インスタンスをELBから切り離したあとも処理してくれる機能のこと。切り離した時点で新規セッションが貼られることはありません。
    • CLBでもCLIでは確認できます
  • パス部分のパターンでターゲットグループに振り分けることができるようになりました
  • コンテナ化されたアプリケーションのLBが改善されました(複数ポートと動的ポートマッピング)
    • 同一のインスタンスにある異なるポートで動くアプリをLBすることができるようになりました
  • EC2, ECSコンテナの混在も可能です
  • Websocket対応, HTTP/2対応, メトリクスの改善が行われています
  • ALBの料金はLCUで決まります
    • LCUとは、新規接続数、アクティブ接続数、帯域幅を測定し、使用料が最も高いものを請求する仕組みのことです
  • CLB to ALBの移行ツールがあります

github.com

以上。

JAWS-UG 初心者支部 第7回勉強会 参加メモ

JAWS-UG 初心者支部 第7回勉強会 参加してきました。
jawsug-bgnr.connpass.com

参加メモを残しておきます。

JAWS-UG紹介

www.slideshare.net

まずは運営からのお話。初心者支部のブログもあるそうです。
JAWS−UG 初心者支部

AWSのはじめ方 ー入門前〜第一歩ー

www.slideshare.net

アカウント登録後にすぐやることとか、Onlineセミナーとか書籍の紹介。

自己紹介にSSM, CFn職人とかあったのでそっちの話も聞きたかった。

エンドユーザがAWSを使うまで |

資料は見つけられませんでした。

会社のサービスをAWSに乗り換えるまでの経緯をお話しされていました。

個人的にはCLI支部会の話に興味持ちました。実際に手を動かすハンズオン形式らしいです。

過去イベントの記録もあるみたいなので、ここから勉強してみたいと思います。
過去のイベントリスト - JAWS-UG CLI専門支部 | Doorkeeper

LT

お前ら! AWS認定試験に挑戦してみませんか? おすすめスライド大紹介(仮)

Onlineセミナーのリンンがひたすら貼っている資料でした。。

既にまとまってるので↓で良かったのでは?
AWS クラウドサービス活用資料集 | AWS

サービス名は覚えておくと間違えづらいとのこと。

タイムラインにはこんなのも流れていました。


サーバの脆弱性を自動検知しよう on AWS(仮)

github.com
脆弱性スキャナVulsの紹介でした。

脆弱性調査は毎度めんどくさいので、自動化できるのは良いですね。

運用監視もクラウドファースト!AWS監視きほんのき

www.slideshare.net

CloudWatchを使いましょうというお話しでした。
ログ監視やデータ保持期間の関係でインスタンスを立ててZabbixで監視していましたが、Lambdaを使えばサーバーレスで監視できそう。

監視SaaS DATADOG(宣伝)のデモとして、ポケモンGOが落ちているかわかるサイトを紹介してました。
ispokemongodownornot.com

最後に

ということで次回も参加してみたいと思います。

AWS CloudFormation の更新 – YAML、クロススタック参照、簡略化された置換 について

AWS CloudFormationに更新があったみたいです。

AWS CloudFormation の更新 – YAML、クロススタック参照、簡略化された置換 | Amazon Web Services ブログ

AWS CloudFormation で YAML テンプレートとクロススタックリファレンスをサポート

それぞれ見てみたいと思います

YAML Support

テンプレートをYAMLで書けるようになりました。
JSONだとコメントが書けなかったりと不便だったので嬉しい更新ですね。

ただ、JSONYAMLではイテレーターが使えないのが不便なところ。
まじめに書くと数千行になってしまうので。

クロススタック参照

1つのスタックから値を取得し、他のスタックで使えるようになりました。
例えばあるスタックで作成したVPCの情報やセキュリティグループの情報などを、他のスタックで呼び出せます。

簡略化された置換

変数の書き方が難しかったので、少し嬉しいですかね。

最後に

普段はkumogataを使ってrubyの文法で書いてます。
https://github.com/winebarrel/kumogata
コメントも書けて、同じような設定はeachで書けて、変数もruby的な表現で簡単に書けていたので、「YAML Support」と「簡略化された置換」に関してはあまり恩恵はなさそうです。

また、VPCVPC サブネット、セキュリティグループ、IP アドレス、Route53などを分けるために、スタックをネストして使っていました。
keiwt.hatenablog.com

ネストする場合は親スタックが各子スタックの関係を知っていないといけなかったので、
「クロススタック参照」を使うことでさらに疎結合にできそうですね。

書き方もシンプルになるので、今度試してみたいと思います。