ローファイ日記

出てくるコード片、ぼくが書いたものは断りがない場合 MIT License としています http://udzura.mit-license.org/

PrometheusのExporter周りをまとめる

Mackerelの3周年(おめでとうございます!)、OSSではPrometheusの隆盛もあり、監視やモニタリング周りが話題になっているのを観測している。皆さんは、監視されていますか? 個人的にも最近はロリポップ!マネージドクラウド周りの開発などでPrometheusを触…

Developers Summit 2017 KyushuでFukuoka.rbの話をした

event.shoeisha.jp ということでデブサミデビューさせていただきました。 FGNなどのつながりでご縁のあったオルターブース小島さんにご紹介いただきました。福岡大名最高!ありがとうございました。 資料です。

コンテナと人間の一ヶ月

ブログ、一ヶ月ぶりのようです。 @udzura です。ところでみなさんはコンテナですよね? そういう感じです。 ここ最近のアウトプットをまとめたりしておきます。先に行っておきますがどれもLinuxコンテナの話です。

福岡Ruby会議02 - もう一度、Rubyと出会う

regional.rubykaigi.org よろしくお願い致します。 以下は、動き始めるにあたってesaに書いた情緒的な文章です。 福岡、飯塚テックだったり僕たちのFukuoka.rbだったり比較的小さなコミュニティは続いているけれど、九州Ruby会議01ごろの盛り上がりは(想像…

cgroup経由でシステムの利用状況を知る - CPU編

システム全体の負荷を計測する方法は、ロードアベレージ、topなどprocpsスイート、sysstat系のツールなど色々あるが、特定のコンテナ単位での負荷状況を知りたい。 コンテナ単位というのはつまり、cgroupの仕組みを用いて、一つのコンテナに所属しているプロ…

社内向けホスTechMTG #3 で「自分のための問題解決」と題してしゃべった

久しぶりのローファイ日記です。 ペパボは幾つか事業部があって、事業部に所属するエンジニア〜たちで社内向けに発表会をしています。詳細は以下のようにテックブログでレポートしていたりします。 tech.pepabo.com 読んで分かるようにめちゃくちゃ楽しそう…

mrubyとseccompとptraceでシステムコールをとにかく追いかける

世の中にはseccompというものがあり、知られています。皆さんはBPFですか。人は、、、 seccompについては以前書きました。Linuxのシステムコール呼び出しをフィルタリングして許可したり禁止したりするものです。 udzura.hatenablog.jp さて今回、拙作 mruby…

straceがどうやってシステムコールの情報を取得しているか

興味があって調べていたら、少しだけ分かったのでまとめておきます。当然間違った箇所もある、あと考慮が漏れている箇所もあるかと思いますのでツッコミをお願いします…

Cレベルのライブラリコールを“Hijack”してみる その2 - libmruby.aを組み込む

少し間が空いたんですが udzura.hatenablog.jp こちらの続きです。 今回は LD_PRELOAD するshared objectにlibmruby.aを組み込み、mrubyで置き換え対象の処理を記述できるようにする。 組み込み用の libmruby.a を作成する

第9回フクオカRuby大賞を受賞しました

www.digitalfukuoka.jp 去年より開発している、mrubyでコントロールできるLinuxコンテナランタイム Haconiwa で、第9回フクオカRuby大賞・県知事賞をいただきました。 写真は受賞決定直後の様子です。 今日の福岡Ruby大賞で @udzura さんが大賞で100万円とっ…

Linuxプログラミングインターフェースを読んだ(一周目)

読みきった。一周目の所感を書く。 Linuxプログラミングインタフェース作者: Michael Kerrisk,千住治郎出版社/メーカー: オライリージャパン発売日: 2012/12/01メディア: 大型本 クリック: 14回この商品を含むブログ (7件) を見る

Cレベルのライブラリコールを“Hijack”してみる その1。

Rubyの、 Time.now は最終的には clock_gettime(3) を呼び出しているそうな。 masterの当該箇所 Time.now は Time.new を無引数で呼び出しているに過ぎない ここで、 Time#initialize の実態は time_init time_init は引数がない場合 time_init_0 を呼ぶ tim…

名古屋Ruby会議03で登壇した #nagoyark03

先日の 名古屋Ruby会議03 、「未来のサーバ基盤へのHaconiwa/mrubyの関わり」ということで、Haconiwaについて、開発の近況、そして FastContainer構想 などについて話しました。 Rubyistの皆さんの前で(日本語で)トークするのは多分これが初回ということで…

mruby-uvで普通のfile descriptorが読み出し可能になるまで待つ

libuv経由で(uv_fs_open などで)作ったファイルへの参照(uv_fs_t)は基本的に非同期IOになるので、libuvのイベントループで取り扱うのに向いている。参照。 そうでないような同期的なIOのfile descriptor(fd)、たとえば普通にパイプで作ったやつや、 even…

2016年をまとめる

前回の記事で2015年までの振り返りを振り返るなどしたので、いよいよ今年を振り返ろうと思う。割とお仕事寄りで振り返る。 udzura.hatenablog.jp

2016年を振り返る、前に振り返りを振り返る

ここ3年ぐらい、ブログで一年を振り返っていないことに気づいてしまった... むしろここ3年ぐらいは、なんだかとっても情緒的なアドベントカレンダーのエントリを書いて満足している様子がうかがえる。情緒的なのはいいんだけど、燃え尽きておる... 2012年の…

私のロールモデル: エンジニア立ち居振舞い番外編

お題「エンジニア立ち居振舞い」 pepabo Advent Calendar 2016 24日目の記事です。 割と飲みの席とか、某ポエムサービスでは語ってはいるんですが、そういえばブログで書いたことがないような気がしたので父の話をします。 実は今年の福岡での新卒研修で同じ…

GMOペパボ ホスティング技術カンファレンスでツアーをしてきた #pbtech

pepabo.connpass.com pepabo.connpass.com おかげさまで盛況のうちに終わりました。資料の方も、僕は二部構成になっていますので、まとめてどうぞ。 speakerdeck.com speakerdeck.com その他、 人々の資料はこちら です。

AppArmorとDockerとその他コンテナ的プロセスについて調べた

ここ数日のAppArmorに関する調査をまとめておく。アドベントカレンダーの季節だけど、特に該当しそうなカレンダーがなかったのでただの記事を書きます... 突っ込みどころはあると思うので、修正指摘等お気軽に。 AppArmor とは AppArmorはMAC(Mandatory Acce…

mruby-passwd のサンプルからわかるmgem(あと、C言語)を書くときの罠

mruby advent calendar 8日目 としてやっていかせていただきます。7日目はけいぞうくんのすごい記事でした。 keizobookman.hatenablog.com さて先日、mrubyのgemをコーディングするスクリーンキャストを撮り、実際にコードを残しました。 udzura.hatenablog.…

mruby gemを作るスクリーンキャストです

mruby advent calendar 2016 5日目の記事なのですが、公開が遅れ失礼します。 前日の様子です。 qiita.com 先日の Fukuoka.rb で、mrbgemをライブコーディングで作る、という一芸をやったのですが、とはいえ特に映像などを記録するでもなくという感じでした。…

fusuma/mruby-fuseでFUSEを簡単に試す

mruby Advent Calendar 2016 の 2日目の記事です。 昨日は おごもりさんのRuby Miniature Book の記事でした。 今日は、最近こそこそ作っているfusumaとmruby-fuseが、なんとなく面白いおもちゃにはなってきたので、せっかくということで紹介したいと思いま…

seccompをmrubyで試す

seccomp とは、Linuxでプロセスのシステムコールの発行を制限する機能のこと。今回試すものはseccomp mode 2と呼ばれる、Linux3.5から搭載されたもので、システムコール単位での制限、特定の条件を満たす引数のみの許可/制限を実現できる。 バックエンドでは…

StackStormを動かしてみる

DevOpsリハビリ中の @udzura です。皆さんは、アジャイルとデブオプスを実現していますか? 今日は、「IFTTT for Ops」を標榜するイベントドリブンでルールベースな自動化ツール、StackStormをいじってみたので手順を残しておく。 stackstorm.com

Haconiwa 近況(released 0.3.0)

Haconiwaの近況報告です。みなさんは、庭ですか? まず、haconiwa-0.3.0 今すぐダウンロードは以下です: udzura/haconiwa - Packages - packagecloud.io | packagecloud 次に何があったかを話します。

OCI Runtime Specification を読む

某Docker CTOの記事を見てから、ちゃんと見とかないとねという気持ちになり、まずはざっくり読んだ。 なにせ不勉強は承知、メモ程度ということで間違い等のご指摘をお待ちしています。 github.com ソースは2016/08/02 14:30 時点のHEAD(95a6ecffd04732bdf7db…

Haconiwa のrpm/debパッケージを配布開始しました

packagecloud を使っております。 udzura/haconiwa - Packages - packagecloud.io | packagecloud 便利です。一応 CentOS >= 7 / Ubuntu Trusty / Ubuntu Xenial / Debian jessie で利用できると思います。 パッケージをインストールすると3つのバイナリが入…

読んだ - 21st Century C, 2nd Edition

shop.oreilly.comC言語初心者なので読んだんだけど、良かったとも言えるし、大変辛かったとも言える...

Emacsでmrubyをそこそこ快適に書く

こんにちは、これはEmacs記事です。みなさんはEmacs記事...ではないですよね...。 Haconiwaのおかげですっかりmruby人間になって久しい id:udzura です。 https://t.co/1iLQyn2rV0 バージョン 0.2 系を出しました。rlimit系のリソース制限と、コンテナ内PID=…

HaconiwaでDockerのsshdコンテナを利用してみる

こんにちは。これは技術記事です。みなさんは、技術記事ですか? まず、 Haconiwa の近況報告なんですが、この度 mruby で書き直し、ひとまず MRI 版と同じ程度の機能までは実装できました。 github.com これに伴い、Linux用のバイナリを配布する形にインス…