サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大谷翔平
tech.im-dmp.net
こんにちはmatsです。 今回はdocker環境への全面移行について、運用環境や全体構成について書こうかと思います。 全体構成 デプロイフロー GitHubとCircleCIの連動を軸に自動化しています。流れ的には [GitHub] PRをmasterブランチにマージ [CircleCI] 自動テスト [CircleCI] docker build でイメージ作成 [CircleCI] ECRに対してdocker push [CircleCI] API経由でECS Task Definitionを更新 [CircleCI] API経由でECS Serviceを更新 [ECS] Sevice設定を元にコンテナが展開される masterブランチが勝手にデプロイされるので、デプロイという作業は行っていないような感じです。 また、ECSのコンテナの入れ替えはELBのヘルスチェックが通るまで古いコン
こんにちはmatsです。 IMでは2016年の夏頃からdocker環境への全面移行を行っております。 一旦、一段落したので、色々とまとめてみようかと思います。 なぜECSを採用したのか dockerの基盤としてはKubernetesやDocker Swarmなど、いくつか選択肢があり、IMでもいくつか検討してみましたが、下記の理由でECSを採用しました。 Spot Fleet との相性がいい コンテナのオートスケールをCloudWatch連動で出来る 管理画面をAWSがホストしてくれる Docker Swarmをサポート予定(らしい) 色々理由はあるのですが、一番はサクッと試してみることができて、ラフに運用が出来るのが一番の理由だったりします。 何をdocker環境で動かしているのか IMのほぼすべてのシステムがdocker環境で稼働しており、下記のようなサービスがあります。 Python
こんにちは。matsです。 ちょうどAerospikeを増強する機会があったので、インストールについてまとめてみました。 基本的にはこちらのリファレンスを参考にしています。 サーバの起動 下記の構成で立ち上げます。 インスタンスタイプ: r3.2xlarge以上 OS: Amazon Linux (HVM AMI) 起動したら次のコマンドで拡張ネットワーキングが有効になっていることを確認します。 「driver: ixgbevf」とあれば大丈夫です。 # ethtool -i eth0 driver: ixgbevf version: 2.14.2+amzn firmware-version: N/A bus-info: 0000:00:03.0 supports-statistics: yes supports-test: yes supports-eeprom-access: no s
こんにちはmatsです。 最近、更新サボってましたが久しぶりの投稿です。 今回は前に下の記事でご紹介していたジョブスケジューラー「Rundeck」について書こうかと思います。 http://tech.im-dmp.net/archives/1681 最近、2.6.0がリリースされたのでアップデートを行ったのですが、改めてドキュメントを見なおしてみるとクラスター構成が組めるみたいだったのでチャレンジしてみました。 そんなに難しくはないのですが、ドキュメントがあまり綺麗にまとまっていなかったりするので、参考になれば幸いです。 Rundeckとは オープンソースで開発されているJava製のジョブスケジューラーです。 SSHで対象サーバに接続し、決められた処理を行えるのが基本機能になるのですが、EC2連携のプラグインを使うことでEC2側のタグやインスタンスタイプ、AZなどで対象サーバをフィルタリン
こんにちは。g0eです。 昨日、弊社のコーポレートサイトをリニューアルしました。 なかなかかっこよく仕上がったんじゃないかと満足している一方で、随分と更新をサボっていたこのブログにも、きちんとしたリンクが貼られてしまったので、とりあえず何か書いておこうと思います。 参考までにコーポレートサイト corp.intimatemerger.com 背景 弊社ではAWS上にスポットインスタンスをうまく活用して、elasticsearchのクラスタを構築しています。スポットインスタンスは価格をかなり抑えられる一方で、時々価格が高騰してインスタンスが強制ターミネートされてちょっとドキドキします。(昨年の11月下旬〜12月上旬は特に頻度が高かったような) 冗長化して片方のAZが全滅してもデータ欠損は発生しない構成にしたり、スポットインスタンスで十分な数が確保できない場合は、オンデマンドインスタンスが自動
こんにちは。最近pythonと戯れているmatsです。 6月の頭にこんなリリースがありました。 今回はこの「Airflow」を試してみようかと思います。 Airflowとは 「Airflow」はAirbnbがオープンソースとして公開したワークフロー管理プラットフォームです。 データパイプラインを規模に応じてタイムリーにオーサリング、スケジューリング、モニタリングすることができ、過去数年間で爆発的に成長したAirbnbにとっては不可欠な存在とのこと。 ソースコード: https://github.com/airbnb/airflow/ ドキュメント: http://pythonhosted.org/airflow/ Airflowのインストール Airflowはpython製で2.7系のみの対応です。今回はAmazon Linuxにインストールを行いました。 準備 コンパイルに必要なパッケー
こにちは、matsです。 昨日、行われていた「Aerospike Deep Dive」に登壇してきました。 Deepと付いているのですが、どちらかと言うと採用事例やTips的なものがメインだったので全くDeepではありませんでした。。 内容的には IMでの使われ方(導入事例) ← メイン 導入時に検討した他のKVS 導入して気づいたこと こんな感じで、後半2つは参考程度のお話になります。 海外で大規模に運用しているところでは、BlueKaiやAppNexusなどのDMPで弊社と同様の使い方をしているようなので、Aerospikeの用途的には比較的王道をいっているのかと思います。なので、事例としては結構いいんじゃないかなと思い、お話させて頂いた感じです。 最後に質問で、SSD領域を使ってやっている属性データの加工の際のレスポンスについて聞かれましたが、Aerospike的にはほぼ全て1ms以
こんにちは、matsです。 昨日、行われていた第10回Elasticsearch勉強会に登壇してきました。 内容としては、AWS上にAutoScallingを利用して大規模なクラスターを組んでますよという事例紹介がメインになります。 1.5ヶ月でリリースまで持っていったこともあり、パフォーマンス(構成)の考察などはサービス提供上問題ないレベルであればOKを出していたので、正確性に欠けているな・・というのをまとめながら考えていました。 半分くらいは当たり前の内容を書いているつもりでしたが、意外に反響が大きかったのを見ると他社の事例というのは需要が大きいのかなぁといったところです。 また、他のESユーザの方のお話を伺うと、QPSやレイテンシなどを気にしている方が多いのが印象的でした。 IMの場合は、4億弱のdocumentに対して激しい集計をかけるような重いクエリが多く、どうしても数秒はかかっ
こんにちは。社内でApple Watchをイジられているmatsです。 少し前に、 このような記事を書きましたが、今回はその続きになります。 プレスリリースや前回の記事では他社とのID連携の部分にフォーカスしていましたが、実は弊社が保有する3億超のIDに紐づく属性データもAerospike上で扱っています。今回はその辺りについて触れていこうかと思います。 Aerospikeのパフォーマンス 億件レベルのデータを扱うためにはAeorspikeのパフォーマンスが必要不可欠です。 例えばですが、1件取り出すのを1msで行えるとしても、3.6億件を取り出すのに単純計算で 36万秒 = 6000分 = 100時間 かかります。実際の処理の場合には並列で処理を行うのですが、Aerospikeのパフォーマンスを最大限に引き出すためには、結構な多重度でリクエストを送る必要があります。 相応のスペックのサー
どうもmatsです。GWいかがお過ごしでしょうか。 突然ですが、みなさんはサーバの監視には何を使っていますか? IMではリソースの監視にmackerelを、サービス監視にNagiosを採用しております。 100台超のサーバ群を監視するのにmackerekは非常に便利かつ強力なのですが、問題はNagiosです。 IMではほとんどのサーバをオートスケールにて起動しており、そことの相性が非常に悪く超重要なサーバ以外はNagiosに設定を入れていない状況です。 Sensu等も検討したのですが、ものによってはプラグインによって値をmackerelに送れば事足りるものも多いので今回はそちらで対応することにしました。 カスタムメトリックの投稿 mackerelのヘルプによると、 ホストのカスタムメトリックを投稿する これの通りやると、好きなメトリックをmackerelに投げつけることが出来るみたい。しか
こんにちは。mats116です。 先日、このようなプレスリリースを出させて頂きました。 DMP専業大手のインティメート・マージャーが自社パブリックDMPに「Aerospike」を採用 今回はその裏側の話をしようかと思います。 Aerospikeを初めて聞く方もいるかと思うので、簡単に説明しますと、 Aerospikeとは…. NoSQL(キー・バリュー・ストア)データベース インメモリ、もしくはフラッシュメモリ(SSD)にデータを保持 ノードの追加により、処理能力とデータ容量をスケールアウト可能 99%以上のトランザクションを1ms以下のレイテンシで処理可能で 僅か数台で百万TPS超のスループットを実現 AppNexusやBlueKaiで稼働実績あり Aerospikeを検討する際に評価したポイントは、 スケールアウト可能であること(データ量が予測が難しい) 応答速度 で、これらを満たすデ
このページを最初にブックマークしてみませんか?
『tech.im-dmp.net』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く