タグ

ブックマーク / blog.riywo.com (280)

  • FluentdをMesos + Docker + Marathonで動かしてみた - As a Futurist...

    Fluentd Advent Calendar 2013の一部です。(PST だとまだ 20 日なのでお許し下さい。。。) 最初は iOS からCocoaFluentLoggerでなんか送って遊んでみようかと思ってたんですが、単にタップした場所のログ送るくらいだったらあっさりできてしまって(CocoaFluentLogger の出来が良い)、それ以上楽しいことをやるには iOS のスキルが足りなかったので、急遽 Mesos で遊ぶことにしました。動かなかったらごめんなさい! riywo/sample-fluentd-on-mesos-docker 概要 今回は Mesos クラスタの上に Fluentd(td-agent)を好きな数だけ配置して、フロントとして HAProxy を立て、バックエンドに Elasticsearch を置いてみました。結果は Kibana で見ます。 Fluen

    FluentdをMesos + Docker + Marathonで動かしてみた - As a Futurist...
    riywo
    riywo 2013/12/21
    遊んでみた
  • 簡単!Vagrant+Docker+td-agent+Elasticsearch+Kibanaで流行に乗ろう - As a Futurist...

    Fluentd Advent Calendar 2013に登録したものの、そういえば 1 年位全く fluentd に触ってなかったので、リハビリも兼ねて最近バージョンアップで導入された Vagrant の Docker provisioner を使って、ES+Kibana に流すとこまでを作ってみた。実用性には乏しい。 riywo/vagrant-docker-td-es-kibana-sample 以下解説。 Vagrantfile localhost から port forwarding で box の同じポートに接続させてる。さらに box の中で Docker が走っていて、Docker provisoner でコンテナを起動する時に、port redirect させているので、クライアントからダイレクトにコンテナと会話ができるようになっている。 ES と Kibana はarc

    簡単!Vagrant+Docker+td-agent+Elasticsearch+Kibanaで流行に乗ろう - As a Futurist...
    riywo
    riywo 2013/12/14
    ビッグウェーブに
  • 法令データ提供システムのデータをgithubに上げてみた話 - As a Futurist...

    この記事はCivic Tech Advent Calendar 2013の一つになります。 Civic Tech(シビックテック) とは何か …市民がテクノロジーを活用して公共サービスなどの地域課題解決を行うことを指しています。…これまで行政だけではサポートできなかった分野でのサービスを行ったり、市民自身がより深く行政のプロセスに参加したり、公共分野でのイノベーションを起こすことができるのではないかと、欧米などで盛り上がりを見せている分野です。 civictech – 地域課題解決の新しい形、Civic Tech と Code for Japan – Qiita 僕自身、特に Civic Tech に対して何か志や熱意があるわけでは今のところ無いですが、別件で API とデータについてふと考えてた時に、日国の法令データも更新が頻繁じゃないんだから普通に全部ダウンロードできた方がいいよなぁ

    法令データ提供システムのデータをgithubに上げてみた話 - As a Futurist...
    riywo
    riywo 2013/12/10
    書きました
  • ポータブルなwebアプリケーションとそのインフラの未来の一考

    naoya さんのポータブルな Web アプリケーションを受けて最近思ってることをば。140 文字で時々書いてるんだけど、まとまりがないので一回まとめておきます。 12-factor app ステートフルなアプリケーションについては、Heroku の人が提唱してる 12-factor app というのが現在の状況をよく表してます。 The Twelve-Factor App The Twelve-Factor App(日語訳) Heroku や他の PaaS によってもたらされたこうした一種の”制約”によって、アプリケーションの新しいカタチが生まれてきています。引き算によって新しい価値が生まれてきているわけですね。 とはいえ、PaaS は PaaS でそれぞれに独自の仕様を持っているわけですが、Herokubuildpack という仕組みを使って、Heroku とインタフェース仕様

    ポータブルなwebアプリケーションとそのインフラの未来の一考
    riywo
    riywo 2013/12/04
    書いた
  • site-statusというwebサイトのstatusを取るツールを作ってみた - As a Futurist...

    最近は CoffeeScript も楽しいなぁと思うようになって、思いつきで書いてみました。ちなみに、coffee で書いて grunt-contrib-watch で js にしていて、出来上がったものを npm に publish しています。あとテストがありません! riywo/site-status site-status 詳しくは README に書いたのでそちらを見て下さい。 何ができるの? 超簡単な使い方だと、エンドポイントをとある JSON の形式で STDIN に流し込めば、非同期にダダっとリクエスト投げてくれて、レスポンスタイムとレスポンスコードを STDOUT に出力してくれます。これをまた別のツールで拾って何か他のところにつなげてあげれば、簡単にいろんなサイト(もしくは HTTP なインタフェースのサーバとか)の稼働状況をロギングできます。 ついでに、GET できた

    site-statusというwebサイトのstatusを取るツールを作ってみた - As a Futurist...
    riywo
    riywo 2013/08/28
    作ってみたシリーズ
  • proctaskというタスク実行ツールをGoで書いてみました - As a Futurist...

    最近 Go を書きたくなったので挑戦してみました。お題は、stdin を受け取って stdout に結果を出すタスクを、全部ファイルベースで行いたい、というもの。stdin となるものをファイルに書き込んでおくと、それを読み込んで実行プロセスの stdin に渡してくれて、stdout を受け取ったらそれをまたファイルに書き込むようなイメージです。実行時には env var を設定したりできたり、stderr も別に書き出したりしたいですね。 riywo/proctask というわけで作りました。README 参照。ついでだったので、bash -l的な感じで実行ユーザの profile も読み込んで実行してみたので、PATH とかがログインした時と同じ感じで使えると思います、多分。 なお、使い道はこれから考えます。たとえばこんがらがった cron の記述を簡単にできるかも。 あと副産物で、

    proctaskというタスク実行ツールをGoで書いてみました - As a Futurist...
    riywo
    riywo 2013/08/19
    書いてみた
  • 最近のサーバの抽象化について - As a Futurist...

    学者でもなんでもない現場のいちエンジニアの感想です。しかも、どれもちゃんと使ったことないので、聞きかじりをまとめたメモ書きなので嘘が入ってますが、興味ある方がいればどうぞ。 はじめに かつては「OS=物理サーバ」であって、その物理サーバの資源(CPU,RAM,DISK,etc.)をどのように使うかは OS がプロセスに割り振る形で決定されていました。しかし、それでは例えば以下の様な問題があります。 ファイルシステム資源をプロセスが自由にコントロールできない ProcA と ProcB で使いたい libfoo のバージョンが異なる場合面倒 CPU, RAM 資源もコントロールしにくい 同居してるプロセスがメモリい尽くして、みんな死亡、みたいな そもそも異なる OS を同居して使うことができない CentOS ばかり使ってるのに、使いたいライブラリが Debian でしか動かないとか 解決

    最近のサーバの抽象化について - As a Futurist...
    riywo
    riywo 2013/08/06
    メモ書きしておいた
  • AWSのRoute53で簡単Dynamic DNS with Heroku - As a Futurist...

    ふと家のネットワークに VPN したくなった →VPN Activatorで超簡単にできた → せっかくだから Dynamic DNS で家の IP アドレスに名前付けたい →Route53 触ってみたかったの思い出した → スクリプトで Route53 更新するのはなんか嫌 →Heroku にアプリ作って curl で叩いたら Route53 更新するようにしたらいいのでは!!!という長い yack を経て、簡単なアプリを作ってみました。皆さんやってそうですが。。。 riywo/ddns53 なんてことはないアプリで、Heroku にデプロイしておいて LAN 内のサーバから GET リクエストするだけで、自分の AWS のアカウントの Route53 の A レコードを、REMOTE_ADDR な IP アドレスに更新してくれるだけのものです。README の通りに自分の Heroku

    AWSのRoute53で簡単Dynamic DNS with Heroku - As a Futurist...
    riywo
    riywo 2013/07/29
    素振り
  • JenkinsでCronジョブを定義するjenkins_cronを作ってみた - As a Futurist...

    何年前の話題だよという感じですが、ふと Jenkins を Cron 代わりに使ってみようかなと思ったのですが、ブラウザの画面でポチポチするのはなんだかなーと思ったので、DSL を書いてそれを元に Jenkins の API を叩いて更新するというだけのモジュールを作ってみました。 jenkins_cron | RubyGems.org | your community gem host riywo/jenkins_cron 使い方 こんなイメージ。config/jenkins.ymlに Jenkins サーバへの接続情報を書いておきます。 . └── config ├── jenkins.yml └── schedule └── foo.rb DSL はconfig/schedule/*.rbという名前で、その中で job を定義していきます。 $ cat config/schedule

    JenkinsでCronジョブを定義するjenkins_cronを作ってみた - As a Futurist...
    riywo
    riywo 2013/07/26
    素振りとして作ってみた
  • AnypowとNet::EmptyPortをリリースしました - As a Futurist...

    node でアプリ書きたい →Grunt がイケてる → 色々整備したけど開発環境のサーバ起動は Pow が使いたい → 空いてる TCP ポート探せればなんとかなりそう、という感じの yack を経て、Anypow と Net::EmptyPort という gem をリリースしました。実働 2 日なので実験レベルですが自分では使っていこうと思います。cf. Released Anypow and Net::EmptyPort riywo/anypow riywo/net-empty_port Pow? Pow は Rails やってる人はもはや使うのが当たり前かなと思うのですが、そうでない人にはあんまり有名じゃなさそう。僕も 1 ヶ月くらい前に Rails4 を始めるまでは知りませんでした。。。何をするツールかというと、Mac 限定ですがhttp://myapp.devという URL に

    AnypowとNet::EmptyPortをリリースしました - As a Futurist...
    riywo
    riywo 2013/07/13
    日本語も
  • オンライン学習2013 Q2 - As a Futurist...

    当初の予定とはちょっと変えて、Coursera から 3 つのコースを受講して、無事終了しました。2 つは Statement of Accomplishment がついててとてもうれしいです(まだ 1 個は出てないけど)。 Algorithms, Part II | Coursera Kevin Wayne and Robert Sedgewick, Princeton University The Hardware/Software Interface | Coursera Gaetano Borriello and Luis Ceze, University of Washington Machine Learning | Coursera Andrew Ng, Stanford University 所感 Algorithms は前期から引き続き。ちょっとアドバンスドな内容で、グラ

    オンライン学習2013 Q2 - As a Futurist...
    riywo
    riywo 2013/07/10
    前期の成果
  • Packerリリースおめでとうございます! - As a Futurist...

    先週末に Vagrant で有名な @mitchellh さんの新作、”Packer”が発表されました(正式にいつリリースしたのかよく分かってないですが、HN に流れたのは先週)。 Packer Packer | Mitchell Hashimoto mitchelh さんのブログ記事 簡単に言えば、EC2 や Virtualbox などの仮想環境における OS インストール作業を、設定ファイル 1 枚で自動化できるツールです。似たようなツールはたくさんありますし、これからもたくさん出てくるでしょう。ぜひいろんな人に今のうちから触ってもらって、よりよいツールにしていって欲しいと思ったので、超簡単な紹介をしておきます。英語が苦じゃない人は Intro をひと通り読むと良いと思います。 Packer 概要 Packer はメタ OS インストール自動化ツールで、いくつかのフェーズを持ちそれぞれ

    Packerリリースおめでとうございます! - As a Futurist...
    riywo
    riywo 2013/06/30
    みなさん試してみましょう
  • anyenvという**env系の簡易マネージャを作った - As a Futurist...

    ndenv のエントリのおまけで anyenv install plenv 作るかもと書いておいたら、@koba04 さんから欲しい!というコメント頂いたので、とりあえずで実装してみました。ついでに anyenv の説明をば。 riywo/anyenv 何? rbenv をコピーした plenv や ndenv などは、.bashrc とかに 2 行追記して使うわけですが、数が増えるとこんな感じになってなんか悲しいです。 export PATH="$HOME/.rbenv/bin:$PATH" eval "$(rbenv init -)" export PATH="$HOME/.plenv/bin:$PATH" eval "$(plenv init -)" export PATH="$HOME/.ndenv/bin:$PATH" eval "$(ndenv init -)" ... そこで

    anyenvという**env系の簡易マネージャを作った - As a Futurist...
    riywo
    riywo 2013/06/22
    主に自分用
  • node.jsのバージョン管理のためにndenv & node-buildを作ったのとanyenvの宣伝 - As a Futurist...

    nvm がどうも好きになれないので、rbenv & ruby-build を見習ってというか丸パクリして ndenv & node-build を作りました。主に自分用なので細かい説明は省略します。rbenv や plenv に慣れている人はそのままの感じで使えます。nenv があるのは知ってましたが、古そうだったので改めてコピーして作りました。 riywo/ndenv riywo/node-build また、これ系を入れる度に profile をいじるのがだるいので anyenv というのも作ってて、~/.anyenv/envs以下に置くだけでいいようにしてたりもします。これも自分用なので使いたい人がいれば適当に使ってみて下さい。そのうち、anyenv install rbenvとか作るかもしれません。 riywo/anyenv tavi 13-06-29 (土) 11:52 便利なツー

    node.jsのバージョン管理のためにndenv & node-buildを作ったのとanyenvの宣伝 - As a Futurist...
    riywo
    riywo 2013/06/21
    作ったので宣伝
  • DBA的な視点から見たgit - As a Futurist...

    git は現在分散バージョン管理システムの中では最も使われているものだと思いますが、サーバ管理やネットワークだけやってるエンジニアからすると、git は開発者が使うもので、なんか難しそう、と思って敬遠しがちです。実際僕も昔は git なんてコマンド打ちたくありませんでした。しかし、分散バージョン管理システムというのは、複数人でシステムを運用(not 開発)する際にもとても役に立ちます。このエントリでは、いわゆる一般的な git の解説とは違った視点から、git の良さを書いてみたいと思います。 ちなみに、git の基的なアイデアについてはこちらのエントリが分かりやすいと思います。 イラストでわかる!git 入門の入門 : アシアルブログ 複数人でファイルを編集するなら 別にバージョン管理すべきものはソースコードだけではなく、例えばサーバの設定ファイルなんかも管理すべきものです。etcke

    DBA的な視点から見たgit - As a Futurist...
    riywo
    riywo 2013/06/15
    いつも思ってることを書いてみた。
  • 「これからのWeb(バックエンド)」を自分の頭で考えてみた - As a Futurist...

    ふと今更、年初のCROSS 2013の「次世代 web セッション」の動画を見て、うんうん唸ってしまった。プロトコル編の方は知識不足であんまり分からなかったですが、アーキテクチャ編の方はグサグサくるものがあった。「自分の頭でこれからの web を考えてブログに書くまでがこのセッション」という宿題が出ていたので、せっかくなので最近考えてることをつらつらと書いておこうと思った次第。特にまとまりはないですし、戯言です。 これからの Web の話をしよう。 (次世代 Web セッション @ CROSS2013) – Block Rockin’ Codes 前提 僕はコード書いてない&サーバサイドしか見たことない&WEB サーバはあんまり見たこと無くて、それより後ろ側ばっかり見てた人なので、ユーザ側とかアプリ開発者がどうなっていくかについて特に尖った意見はありません orz SPDY とかもまだ手を

    「これからのWeb(バックエンド)」を自分の頭で考えてみた - As a Futurist...
    riywo
    riywo 2013/05/29
    最近思ってることの書き殴り
  • オンライン学習 2013 Q1 - As a Futurist...

    尊敬する mootoh さんに勧められて、僕もこの 6 週間アルゴリズムの勉強に取り組みました。錆びついたマシンガンどころか、そもそも竹槍しかもってない状態で飛び込んだにしては頑張ったほうじゃないかと思いますので、自分を褒めてあげたいと思います。 Algorithms, Part I | Coursera Kevin Wayne and Robert Sedgewick, Princeton University あわせて読みたい Motohiro Takayama • Coursera, 2013 Q1 所感 そもそもアルゴリズムとデータ構造、ちゃんと教科書で勉強したことなくて、大学の講義でチラッと聞いたのと情報処理の資格の勉強の時にかじった程度の僕に取っては、新鮮なことが多くて大変ためになりました。ちなみに、なぜかこれの直前にいきなり Ruby で B+Tree を実装してたのは何かの

    オンライン学習 2013 Q1 - As a Futurist...
    riywo
    riywo 2013/04/03
    今期もがんばろう
  • Pandlerというrpm/yum管理ツールを作り始めました - As a Futurist...

    皆さん、構成管理楽しんでますか?最近は Chef や Puppet がやっと認められてきて普及し始めているところの様で、いろんな人が構成管理を楽しみ始めていてとてもうれしいです。 ところで、僕は前にこんなエントリを書いたりして、パッケージ管理にとっても興味のある人間なんですが、Berkshelfという Chef の cookbook を Bundler の様に DSL と lockfile で管理できるというスーパー便利ツールの開発者のプレゼンをこの間聞きました。僕はこの DSL と lockfile でパッケージを管理するというやり方はすごい好きで、Bundler に始まり他の LL のパッケージ管理も大抵そういう仕組がありますし、Berkshelf の様に言語のパッケージだけでない応用もあるわけですね。 で、だったら rpm/yum(deb/apt)も同じ様に管理できたらおもしろいんじ

    Pandlerというrpm/yum管理ツールを作り始めました - As a Futurist...
    riywo
    riywo 2013/03/31
    こんなの作ってみました
  • 競争システムと夢 - As a Futurist...

    東洋経済で連載されているこちらのコラムを毎回楽しみにしています。 宇宙を目指して海を渡る | 東洋経済オンライン | 新世代リーダーのためのビジネスサイト MIT の大学院で Ph.D.を取られた方(@masahiro_ono)のコラムなんですが、グサグサ来ます。その中でも今回のコラムは僕にとっては一際深く突き刺さりました。特に最後のこのフレーズ。 競争位のシステムに当に合っている人とは、自分の夢や目標を実現するためにもっと努力せねばならぬと思う克己心と、自分の根っこの深くに抱える人間的な弱さとが葛藤し、しばしばもどかしさを感じている、僕やあなたのような人なのではないだろうか。 胃が痛む「MIT の競争生活」で学んだこと | 宇宙を目指して海を渡る | 東洋経済オンライン | 新世代リーダーのためのビジネスサイト こういう思いをつい持ってしまう人は、絶対に一度こういうところに行った方が

    競争システムと夢 - As a Futurist...
    riywo
    riywo 2013/02/24
    グサッときたので書いておく。僕もがんばって生きよう。
  • Podcastはじめました&Podcastのはじめ方 - As a Futurist...

    miyagawa さんが始められたのをみて、そういえば Podcast ってどういう仕組でやってるのかすら知らないので勉強ついでにやってみようかなと思って始めてみたら、思った以上に手間がかかってしまったので、3 行でまとめて「みんなも始めよう!」という感じにしたい。 Mac で録音して無音とかカットする github page にアップして Tumblr でブログ作って Feedburner で RSS 作る iTunes から RSS を登録してレビュー通ったら完成! miyagawa さんの Podcast を大いに参考にさせて(パクリとも言う)頂きました。感謝!というわけで、僕の Podcast はこちらになります。まだ ep0 で、次回から気だす! iTunes – Podcast – Ryosuke Iwanaga「riywo’s Podcast」 riywo’s Podcas

    Podcastはじめました&Podcastのはじめ方 - As a Futurist...
    riywo
    riywo 2013/02/22
    @miyagawa さんの真似してみました!