ブックマーク / ameblo.jp/principia-ca (22)

  • 『ネットワーク初心者の新卒がDockerでネットワークの勉強をしてみた』

    こんにちは!サイバーエジェント アドテクスタジオ新卒の黒崎 (@kuro_m88) と申します。 Dynalystというチームに配属され、一人前のサーバサイドエンジニアになるべく修行をしています(`・ω・´)最近はScalaを書くことが多くて、Sparkで大量のログを集計するバッチの開発をしています。ほぼ100%AWSで構成されているプロダクトなので業務でネットワークの運用もしませんし、構成の事を意識する事はあまりありません。 そんな中でネットワークの事が知りたくなったのは、広告の配信に関わる開発をしてみて、広告の配信の仕組み自体も技術的にめちゃくちゃ面白いんですが、それと同時に自分たちのサーバから広告が表示される端末までの間がどうなってるのか気になってしまったのがきっかけです。学んでいくにはやはり手を動かすのが一番ですよねo(((^^)))o

    『ネットワーク初心者の新卒がDockerでネットワークの勉強をしてみた』
    nishitki
    nishitki 2016/11/10
  • CircleCI Enterprise on On-Premise | サイバーエージェント 公式エンジニアブログ

    技術部 Advanced Dev.Center(略してADC)の大倉です。 私達は、Make Your Goals Come True. Easier + Faster. 、をコンセプトに1600人規模の開発環境の改善や統一化を行ってます。 この記事は、CircleCI Enterprise管理者を対象としております。今後、導入を予定されている管理者の方にとって、少しでも有益な情報になればと思います。 CircleCI kim様、kevin様、いつも迅速なサポートありがとうございます。とても感謝しております。 CircleCI kim, kevin Thank you very much always for your cooperation ! なぜ、オンプレ化したか当初のEnterprise版は.com版と同じようにクラウドサービスとして展開されていましたが、2016年にCircle

    CircleCI Enterprise on On-Premise | サイバーエージェント 公式エンジニアブログ
    nishitki
    nishitki 2016/09/30
  • 『Upgrading the GitHub Enterprise on AWS』

    技術部 Advanced Dev.Center(略してADC)の村上です。 私達はMake Your Goals Come True. Easier + Faster. をコンセプトに開発環境の改善や統一化を行ってます。 タイトルのとおり、私達の組織ではソースコードのバージョン管理システムとしてGithub Enterprise(以下GHE)を導入しており、今回久しぶりにアップデートを行ったので、それについて書かせていただきます。 なお、今回の作業にはADCメンバーに加え、敏腕インフラエンジニアの@kakerukaeruさんのお力添えあってこそということを彼の上司@strskへ向けてアピールしておきます。 規模・SPEC規模感としてはユーザ数は約1000名、Organization約400、Repository約10,000になります。 - Primary on AWS EC2 Inst

    『Upgrading the GitHub Enterprise on AWS』
    nishitki
    nishitki 2016/09/16
  • 『AbemaTVでのGKE運用事例のご紹介』

    サイバーエージェント公式エンジニアブログをご覧の皆さんこんばんは、技術部サービスリライアビリティグループの須藤(@strsk)です。最近2016年で3回目の役満、大三元を和がりました。 日は、9月6日に行われたGCP NEXT World Tour Tokyoにて発表した資料を公開します。 Google Container Engine と Kubernetes で 無理をしないコンテナ管理 from Ryosuke Suto 一緒に登壇したGoogle社のDeveloper Advocate、イアンさんからは、Kubernetesが開発された流れから動作解説、私からはAbemaTVでGKE採用に至った理由と運用してみての感想について発表させていただきました。 Kubernetesはとても便利なDockerのオーケストレーションツールで、開発も活発です。これをマネージドサービスとして

    『AbemaTVでのGKE運用事例のご紹介』
    nishitki
    nishitki 2016/09/08
  • 『ElasticSearch(0.19)で無理やりデータ復旧させた話』

    こんにちは。Amebaの基幹系インフラ担当している鳥垣です。 ユーザーのサービス用途でElasticSearch(0.19.10)を使用しているのですが、先日ElasticSearchの障害で一部のShardが読めなくなってしまいまして、それを力技で無理やり読めるように復旧させたのでその時の奮闘記を記載したいと思います。 運用情報台数:30台CPU:24コアHeap:8GBインデックス数:3総データ容量:約300GBShard数:128レプリカ数:2バージョン:0.19.10※OpenStackの仮想サーバ ホスト障害発生OpenStackのホストサーバがダウンし、ElasticSearchのノードが1台ダウン。Shardの再配置処理が走り、ダウンしたノードが持っていたShardは他ノードに分散される。この時点ではElasticSearchのクラスタステータスはグリーンだった(Headプラ

    『ElasticSearch(0.19)で無理やりデータ復旧させた話』
    nishitki
    nishitki 2016/06/10
  • 『新卒研修環境の構築をTerraformで自動化してみた』

    アドテクスタジオのDynalystというチームで働いている黒崎 (@kuro_m88) です。 たまに社内で自作ドローンを飛ばしたりしています。 早いもので入社2年目になりました。つい先月まで新卒だったはずなのですが…(・・;) 今年も新卒の技術者が約60名入社し、新入社員全体の研修が終わり現在はエンジニア技術研修が行われています。 今回はその環境構築で行ったことについて紹介しようと思います。 エンジニアの新卒研修の概要 今年の研修のゴールは「アーキテクチャをゼロから考え、実装できるようになる」というもので、研修課題は2つあります。 1つ目は現在まさに取り組んでもらっているのですが、2週間でミニブログシステムを3~4名のチームで制作してもらいます。 チームによってスキルセットが違うので、ネイティブアプリに特化するチームもいれば、バックエンドやインフラでいかにスケールしやすい構成にするか、

    『新卒研修環境の構築をTerraformで自動化してみた』
    nishitki
    nishitki 2016/04/26
  • 『画像システムの車窓から』

    2年半くらい画像システムを担当していたのですが、3月イッパイで異動することになりましたokzkです。 異動記念ということで、とりとめもなくエンジニアブログを書いてみます。長いです。よろしくお願いいたします。 画像システムのこれまでのストレージ事情最初にアメブロ(以下、単にブログ)のユーザ投稿画像関連でのストレージの歴史をアレコレをまとめてみようと思います。なお、以下swiftと書いたらOpenStack Swiftのことです。流行のプログラミング言語のことではありません。 はるか昔の状況昔は単純にWebDAVを複数台並べ、イッパイになったら更に次の世代のWebDAVを追加する、というような構成で、参照時に画像URLパスに含まれる年月ベースで適切な世代のWebDAVにルーティングしていました。 (参考:画像URLのパスの例) /user_images/20160401/00/shibuya/

    『画像システムの車窓から』
    nishitki
    nishitki 2016/03/24
  • 『AWAにおけるDevOps』

    はじめに AWAでサーバサイドエンジニアをやっている山下といいます。初めてエンジニアブログを書かせていただきます。よろしくお願いします。 簡単に自己紹介をさせていただくと、2011年にSIerからサイバーエージェントに中途入社し、いくつかのコミュニティ系サービスの立ち上げ・運用、インフィード広告配信APIの作成などを経て、2015年4月からAWAチームに参加しました。 今回は、(今さら?な) DevOpsについてです。といってもスムーズな連携をするには といった話ではなく、現在のチームに参加してからというもの、「エンジニア間の役割が変わってきていて、DevOpsって現状にあってないんじゃないか」と感じており、それについてご紹介させていただきます。 AWAとは 定額制音楽配信サービスです。 スマートフォン、PCでアプリを提供しており、他のデバイスにも順次対応をすすめています。2015年のベス

    『AWAにおけるDevOps』
    nishitki
    nishitki 2016/02/18
  • 『Apache Igniteとのインメモリーコンピューティング』

    初めに 全世界に無数に散らばったサービスやデバイスから生み出されるデータ量の急激な増大に伴って、ストリーム処理とインメモリーコンピューティングは避けられない近未来であり、重要なデータ処理パラダイムでもあると言える。ストリーム処理とインメモリーコンピューティングの融合により、多様なデータから新しい価値を発見し、新たなビジネスチャンスを引き出した利益拡大が可能である。なぜなら、データの価値はデータの新しさ(freshness)と強い相関関係を持つ。 インメモリーコンピューティングは、Hadoopのようにスポットライトを浴びるテクノロジーではないが、以前数回も期待の技術としてハイライトがされることがあり、メモリーの大容量化と低コスト化が進められる今こそ、その期待度が高まっている。 低価格DRAMは、ディスクより速い。さらに、DRAMのI/Oは一般的にフラッシュメモリーのI/Oより1000x倍速い

    『Apache Igniteとのインメモリーコンピューティング』
    nishitki
    nishitki 2016/02/08
  • 『【研究課題レポート抜粋】LVSの統計情報のグラフ化プログラムの設計・実装』

    これは第2回研究課題レポートの抜粋です。同レポートは、社員のMaedaさんによって作成され、優秀賞を受賞しました。 研究の背景 サイバーエージェントのインフラを構成するネットワーク機器の内、ロードバランサは以前から商用のロードバランサを使用していた。 Linuxのロードバランサである、ip_vs カーネルモジュール(以下、LVSと記す)をロードバランサとして使用する事で、下記の点でコストの削減が可能である。 ハードウェアが一般的なIAサーバで済む年間の保守費が不要になる 但し、日々の負荷状況の把握、増設計画を立てる上で、LVSの具体的な統計情報を取得することが求められる。 統計情報を有効に活用する為には、量的な変化を直観的に把握できるグラフでの表示が必要と考えた。 研究の開始時点(2008年10月)において、LVSのグラフ化を行う方法、プログラムは既にいくつか存在していたため、何点かのプ

    『【研究課題レポート抜粋】LVSの統計情報のグラフ化プログラムの設計・実装』
    nishitki
    nishitki 2015/12/21
  • 『Flexible Blue Green Deploymentのススメ』

    どうもこんにちは。@stormcat24です。前回寄稿した記事から1年半ぶりになります。 主な仕事は業務中のTwitterで、その傍らでAmebaFRESH!というサービスを絶賛開発してたりしています(この記事が公開される頃にはリリースしてるかしら?)。何かネイティブやりに意気揚々と異動してきたんですが、いつの間にかサーバサイドエンジニアになってました。まあサーバサイドといっても、自分はかなりWebオペレーション寄りなんですけど。 で、今回はFlexible Blue Green Deploymentの仕組みを作ったよっていうお話です。 そもそもBlue Green Deploymentとは Blue Green DeploymentとはImmutable Infrastructure(不変なインフラストラクチャ)思想の一貫で、サーバの内容やアプリケーションを更新したい場合に、稼働している

    『Flexible Blue Green Deploymentのススメ』
    nishitki
    nishitki 2015/10/16
  • 『データ解析のシステムからCQRSについて学ぼう』

    どすこい! 昨年ぶりです!最近よくお相撲さんを見る@sitotkfmです! またエンジニアブログを書かせて頂くことになりました! 今回のトピックですが、最初は前回同様ストリーミングアルゴリズムでも発表しようかと思ったんですが、まああんまり受けが良くなかったので今回はパスで。。。(同期に「お前Advent Calender書いてたのかよ」と言われました。。。) それとあの後業務で当にSparkをつかうことになりまして、まあ、えっと、当に大変ですね。。。 さて今回のエンジニアブログではCQRSについて説明したいと思います。 CQRSが何故必要なのか まずドメイン駆動設計(Domain-Driven Degien)という、ビジネスの概念の抽象化であるドメインの要求を最優先として設計を行うソフトウェアの設計思想があります。 ここではドメイン駆動設計について説明しだすと主題から外れかねないのと私

    『データ解析のシステムからCQRSについて学ぼう』
    nishitki
    nishitki 2015/08/25
  • 『Ameba OwndのSEOを支える技術 for AngularJS』

    こんにちは、サーバーサイドのエンジニアをやっているoinumeです。今回は昨年8月ぐらいから作っていたAmeba Owndというサービスで行ったSEO対策について紹介します。 AmebaOwndって?ブログ機能を備えたスタイリッシュなデザインのWebサイトを簡単に作成できるサービスです。 香川真司オフィシャルサイトスターバックス コーヒー オフィシャルブログなどのサイトがAmeba Owndを利用して作られています。 アーキテクチャユーザーさんがWebブラウザでアクセスするページについてはAngularJS + REST API(Nginx + Go)で作られています。一方でGooglebotなどのクローラーからのアクセスの場合は、受けたリクエストをNginxがPrerender CacheというシステムにProxyして、このPrerender CacheからHTMLを返すようにしています

    『Ameba OwndのSEOを支える技術 for AngularJS』
    nishitki
    nishitki 2015/06/25
  • 『PiggPARTYでのリアルタイム通信の仕組み』

    ピグ事業部でサーバーサイドエンジニアをしている有馬です。 先日、弊社よりスマートフォン向けネイティブアプリとして、 「PiggPARTY」がリリースされました。 ピグパーティ iOSアプリ ピグパーティ Androidアプリ PiggPARTYは、スマートフォンのアプリ上で、 顔や洋服などの様々パーツを組み合わせて、自分好みのピグ(アバター)を作成することができ、 渋谷エリアや、原宿エリアといった現実を模したエリアや、 好みの家具で模様替えした自分のお部屋でパーティ(イベント)を開催したり、 他のユーザーと、テキストチャットやスタンプなどで、 リアルタイムにコミュニケーションを楽しむことができるサービスです。 PCアメーバピグをご存じの方には、そのスマートフォン版というと伝わりやすいかもしれません。 PiggPARTYでは、同期的なリアルタイムコミュニケーションを実現するために、 新たにリ

    『PiggPARTYでのリアルタイム通信の仕組み』
    nishitki
    nishitki 2015/05/15
  • 『flynnを使ったオートスケーリングシステム』

    さて、今回の記事のネタは「flynnというオープンソースを使ってオートスケーリングシステムを構築してみた」というお話です。

    『flynnを使ったオートスケーリングシステム』
    nishitki
    nishitki 2015/03/19
  • 『NewSQLのCockroachDBについて調べてみた』

    CyberAgent エンジニア Advent Calendar 2014の23日目の記事です。 秋葉原ラボの、鈴木(@brfrn169 )、Shtykh Roman、柿島大貴です。 普段は、分散DB(主にHBase)やストリーミング処理基盤の開発・運用などをやっています。 今回は、NewSQLの1つであるCockroachDBについて紹介します。 NewSQLとは CockroachDBについて紹介する前に、NewSQLについて簡単に説明します。 NewSQLとは、一言で言うとNoSQL+SQL機能(トランザクション)です。 RDBMSとNoSQLの良いとこどりをしているともいえるでしょう。 従来、RDBはスケールアウトのしづらいモノリシックな作りになっていました。 しかし、RDBでは、昨今のビックデータの潮流に対応できず、NoSQL技術が登場します。 NoSQLは、スケールアウトが容

    『NewSQLのCockroachDBについて調べてみた』
    nishitki
    nishitki 2015/02/01
  • 『ソシャゲからアドテクになって技術的に変わった7つのこと』

    どうも、アドテクスタジオ所属RightSegmentチームの安田です。 元ソシャゲエンジニアで今はアドテクエンジニアしてます。 サーバーサイドJavaエンジニアです。 なので、昨今は特別派手なネタがないので ソーシャルゲームからアドテクに業種変更して技術的な違いとか書きたいと思います。 ちなみにRightSegmentはDMPという位置づけなのですが DMPとはData Management Platformの略で 広告主がもつデータ、第三者のデータなどを一元管理・分析し、 最適な広告配信をするために活用されるプラットフォームになります。 主にタグと呼ばれるJavaScriptを広告主のサイトに貼ってもらい、 サイトに訪れたユーザーのアクセス履歴からユーザ情報を作成してカテゴリ(セグメント)管理しています。 例えば、 某不動産サイトが有名サイトに広告配信したいとした場合、 ランダムに全国の

    『ソシャゲからアドテクになって技術的に変わった7つのこと』
    nishitki
    nishitki 2015/01/30
  • 『アドテクスキルアップゼミ カラムナーデータベース検証まとめ』

    皆様こんにちは。 アドテク部カラムーデータベースゼミチームです。 今回の記事ではゼミチームが行った検証結果について発表させていただきます。 また、この記事につきましては 11/12 に行われた db tech showcase Tokyo 2014 にて発表させて頂きました内容になります。 プレゼン資料はこちらにあがっています。 ※追記 Impala / Presto の File Format についてご指摘を頂きましたのでデータロード及びまとめの部分に追記しました。 アドテクスキルアップゼミ カラムナーデータベース検証まとめ目的 広告システムでは大量のデータをデータベースに入れて解析を行います。 小規模から中規模なデータはRDBMSで行えますが、数TBを超えると RDBMS以外の選択肢を探さないといけません。 ビッグデータ用のデータベースは比較資料が少なく、 また、あったとしても検証

    『アドテクスキルアップゼミ カラムナーデータベース検証まとめ』
    nishitki
    nishitki 2014/11/14
  • 『fluentd + Elasticsearch + kibanaでCassandraモニタリング』

    はじめまして。インフラ&コアテク部の鳥垣と申します。普段はAmeba Smart Phone PlatformやAmebaの基幹系サービス全般のインフラを見る仕事をしております。 昨今fluentd + Elasticsearch + kibanaを使ったリアルタイムモニタリングが流行っていますが、これを使ってCassandraのステータスをモニタリングするシステムを作ってみましたので、そのお話をさせていただければと思います。 構築のきっかけこちらのサイトにてdstatのモニタリングをkibanaでやっている記事を拝見し、Cassandraのステータスも同じようにリアルタイムグラフの描画ができないかと考えました。 以前にWebSocketで監視もリアルタイムにという記事でもあるとおりリアルタイムモニタの仕組みはありましたが、kibanaの検証も兼ねてリアルタイムのグラフ描画にチャレンジし

    『fluentd + Elasticsearch + kibanaでCassandraモニタリング』
    nishitki
    nishitki 2014/10/30
  • 『ACIとロードバランサー連携について』

    どうもこんにちわ インフラ&コアテク部でNWエンジニアしていると思われる田中です。 今回は、以前篠原が記載した記事の環境とロードバランサーとの連携について少しご紹介できればと思います。記事はまだ検証段階ですので内容に不備があるかもしれませんがあしからず。。。 今現在私が検証している内容としては、 CiscoさんのACI環境とF5さんのLB(BIG-IP)との相互接続 です。 そもそもACIって何?という方は、こちらを参考にしてください。 「それでもなんのこっちゃか分からないぜ!」 「だから何が出来るんだ!」 という方、一緒に僕と検証しましょう! 題:APICを使って負荷分散環境の構築! 今回はC社さんがリリースしたコントローラーのAPIC(ACIのコントローラー)を使って、BIG-IP と連携したサーバの負荷分散を実施してみたいと思います。細かい手順については割愛させて頂きますのでご

    『ACIとロードバランサー連携について』
    nishitki
    nishitki 2014/10/16