プラプラ生活1週間目
やーめっぴ
— おさじ (@pypypyo14) June 3, 2019
ということで
7/19(金)に最終出社してから今日でちょうど1週間が経ちました。
まだ休暇中なので、7/31までは会社員と名乗れるはず…。
- なんでやめたん
- なんで次決まる前にやめたん
- 今週やったこと
- 今感じてること(チラ裏)
だらだら書くよ!
続きを読むKubernetes ServiceとIngress
自分なりの理解を整理
参考文献: Kuubernetes完全ガイド
Serviceの役割
- 固定エンドポイントの提供
- KubernetesのPodは生まれては消える、名前もIPアドレスもコロコロ変わる。
- そのため、サービスのエンドポイントにPodのIPアドレス指定すると現実的に運用できない。
- Serviceを使えば、固定エンドポイントが作成される。
- 紐づくPod(等)のIPアドレスはKubernetesクラスタ内のDNSに自動登録される
- ロードバランス
- 固定エンドポイントに紐づく複数のPod間でロードバランシングが行われる。
- ServiceのロードバランスはL4レイヤ
- L7でロードバランスしたいときは後述のIngressを使う
kind: Service の種類
KubernetesのPodへのアクセスのため使うもの
- type: Cluster IP
- type: NodePort
- クラスタ外のホストからアクセス可能
- 全ノードに対するExternalIPのようなもの
- type: LoadBalancer
Kubernetesリソース以外へのアクセスのために使うもの
- type: ExternalName
- type: Cluster IP(None Selector)
- 何のPodにも紐付かない空のClusterIPを作成
- 別途Endpointとして任意のIPを指定することでできる
- PodのIPでもいいし、外部のサービスでもいい
kind: Ingress の種類
クラスタ外のロードバランサを利用するもの
クラスタ内にIngress用のPodをデプロイするもの
うーんむずかしい
読書ログ「ノンデザイナーズ・デザインブック」
読書ログ第2回です! Amazonのアソシエイト審査落ちてワラタ!
読んだ本
- 作者: Robin Williams,小原司,米谷テツヤ,吉川典秀
- 出版社/メーカー: マイナビ出版
- 発売日: 2016/06/30
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (3件) を見る
インフラ勉強会1周年記念イベントに行ってきました
読書ログ「学びを結果に変えるアウトプット大全」
最近は去年までと比べて本を読む機会が増えたのですが(えらい)
せっかく情報をインプットしてそれっきりなのももったいないので
できるだけ読書ログにまとめていきたいと思いたちました。
今回読んだタイトルもちょうどいいかんじ。
読んだ本
学びを結果に変えるアウトプット大全 (Sanctuary books)
- 作者: 樺沢紫苑
- 出版社/メーカー: サンクチュアリ出版
- 発売日: 2018/08/03
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (1件) を見る
※ まだ承認されてないけど、Amazon.co.jp アソシエイトに申し込んでみました。
気にする方はリンクじゃなくてGoogleとかで検索して飛んでね。
続きを読むkinesisお勉強メモ
なぜやるか
今お仕事で構築中のシステムでKinesissをたくさん使うようなので、
どんなものなのか ちょっと詳しく知っておきたかった。
どうやってやったか
いい感じの公式CFnテンプレートがあったので
デプロイ & 中身を見てみた。
このテンプレートでは Cloud Trailで収集したアクティビティを
いい感じにグラフ化したダッシュボードシステムがデプロイされる。
Kinesis Data Firehose, Analytics, Streams の3種類とも使っているので
勉強になりそうだと思った。
メモ
Kinesisとは
ざっくり言うと、大量のデータをバッファリングしておいて、
必要に応じ加工・分析も行えるサービス。
データを溜めておく、と言うことからよくSQSと比較されているけど、
そもそも SQSは Kinesisほど大量のデータを扱う想定をしていないのと
KinesisはSQSと違って内部データの削除は行わないので
(あらかじめ設定したTTLの間 保持し続ける)、
同時に複数のアプリケーションからデータを利用したりすることができるみたい。
(SQS触ったことないので今度)
Kinesis Data xxx 3種類の特徴
Kinesis Data Streams
- Kinesis Data Streams自身はデータのSource, Destinationや加工方法の指定ができない
- データをバッファリングしておく場所の提供
- データをPutする & 内部のデータを利用する ためには自分でコードなり他のマネージドサービスを用意する必要がある
- 利用規模に応じてシャード数を指定する必要がある
- リアルタイム処理に向いてる(データロード間隔 1秒以下〜)
Kinesis Data Firehose
- データのSource, Destinationや加工用Lambda関数の指定がコンソール上でできる
- Source: Kinesis Data Streams, Cloudwatch Logs, Cloudwatch Event, AWS IoT から選択
- APIも叩けるので自分でコード書いてputしてもOK
- Destination: S3, Redshift, Amazon ES, splunk から選択
- Source: Kinesis Data Streams, Cloudwatch Logs, Cloudwatch Event, AWS IoT から選択
- シャード数など指定せずともよしなにマネージドでやってくれる
- Streamsより簡単に利用できるが、柔軟性やリアルタイム性に欠ける(データロード間隔 60秒〜)
Kinesis Data Analytics
- 上2つとは異なり、データ置き場としてではなくデータの加工処理がメイン
- Sourceのストリームから流れてくるデータに対してあらかじめ設定したSQLを実行し、結果をDestinationに送信
テンプレートで作成されるKinesisリソースのデータフロー
- 4つデプロイされている
データの流れがぱっと見わからなくて(絵にないのもあるし)手こずった。。
RealTimeInsightsAccountActivityCloudTrailInput
- Kinesis Data Firehose
- source: ここでは指定してないけど、Cloud Watch Eventのルールで設定(ドキュメント)
- データ加工: なし
- destination:
- S3バケット
(CFnテンプレ名)-firehoses3bucket-hogehoge
- S3バケット
↓
- RealTimeInsightsAccountActivityApp
- Kinesis Data Analytics
- source: Kinesis Firehose
RealTimeInsightsAccountActivityCloudTrailInput
- データ加工: SQL文を指定(CFnのテンプレート参照)
- destination:
- Stream
RealTimeInsightsAccountActivityDataSteam
- Stream
↓
RealTimeInsightsAccountActivityDataSteam
- Kinesis Data Stream
- source: ここでは指定してないけど ↑ のAnalyticsからPutされてる
- データ加工: なし
- destination:
- (1)ここでは指定なしだけど ↓ のFirehoseが引っ張ってる
- (2) 同じくここでは指定していないけど, Lambda関数
real-time-insights-account-activity-update-ddb
のトリガーになっている(ここから図の通り Dynamoに流してる模様) ↓
RealTimeInsightsAccountActivityAnalyticsOutput
- Kinesis Data Firehose
- source: Stream
RealTimeInsightsAccountActivityDataSteam
- データ加工: 指定なし
- destination: S3
(CFnテンプレ名)-outputfirehoses3bucket-fugafuga