サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
衆院選
blog.tnmt.info
第一子の息子が9月に生まれてから半年間取得していた育休が今日で終わる。 育休の終わりに寄せて、感想と個人用メモをまとめた。感想はあまり見出しを付けずにつらつらと書いている。写真はまもなく生後半年となる息子と自分。 育休の感想と総括まずは半年たって妻も子どもも元気で過ごせていることが本当に嬉しい。明日からまた頑張って仕事していこうと思えている。 育休取得にあたって当時の上長だった@hsbtに希望を伝えたところ「いいんじゃないすかね」と快く二つ返事をもらい、業務の引き継ぎなど所属する部署・チームの同僚にもたくさんお世話になった。あらためて感謝したい。 期間を半年に設定したのは何よりも自分がそうしたかったからで、人生で一度しかない第一子誕生という出来事と、その後の生活を存分に噛み締めたかったという気持ちが大きかった。今現在その目的は十分に達せられたと感じる。 モチベーションは他にもあって、就職し
在宅勤務がベースとなり外出する機会が極端に減ってしまった。最寄駅から移動しなく、自宅からの半径1km圏内で生活が全て完結することが増えて、日々が単調になってしまった気もする。 そんな日々が続くからこそ、最近は逆になるべく同じ生活をすることで毎日をルーティン化し、やりたいことをきちんと継続することを目標にし始めている。 きっかけは運動不足解消を目的に8月から夫婦で始めたジム通い。これを続けるために時間の使い方を整備したというのが大きい。 「こうしよう」と話してから2ヶ月続いたので、今日はそんな平日1日の過ごし方をまとめてみる。 1日のタイムスケジュール7:30 起床・計量・食器片付け元々朝は弱い方なのだが、夕方からの時間を確保するために(自分としては)早起きを目指している。目標は7:30、遅くとも8:00までには起きるようにしている。 朝起きるとだいたいすぐトイレに行きたくなるので、用を済ま
自分のIP<A>に対して来た通信を全て別のサーバ<B>にiptablesを使って転送する方法 SRC_IP=<A> DST_IP=<B> iptables -t nat -A PREROUTING -d $SRC_IP -j DNAT --to $DST_IP iptables -t nat -A POSTROUTING -d $DST_IP -j SNAT --to $SRC_IP パケット転送が有効になっている必要があるので、/sbin/sysctl net.ipv4.ip_forwardの結果で、net.ipv4.ip_forward = 0になっている場合は、パケット転送をONにします。 /sbin/sysctl -w net.ipv4.ip_forward=1
去る 5/14(土) に 第5回ペパボテックカンファレンス〜インフラエンジニア大特集〜 を開催し、自分はOpenStackによるプライベートクラウド "Nyah" の運用についてトークしました。 当日の様子は前編・後編と録画がありますので、合わせてご覧頂ければと思います。 筆者の出番はこの辺から。 イベントが企画された3月半ばくらいに社内に対しては「OpenStackの運用と改善した話します」という宣言をしたものの、スライドで述べられている OpenStackのバージョンアップ Cinderを利用可能にする(およびストレージ製品・ソフトウェアの検証) Neutronによるネットワーク刷新 のどれも終わってなかったので発表のわりと直前までヒヤヒヤしていました。無事にカンファレンスまで間に合って良かったです、わりと4月に頑張っています。 質問もいただいたので補足しておきます。いずれも "今も困
カレー Advent Calendar 2015 7日の記事です。 今年からやたらとカレーを食べまくっていて、すっかりカレーエンジニアとして一部では知名度を(多分)上げてきている俺ですが、好きが高じてカレーアプリを作ってしまったのでまず宣伝させてください。 "derry" と言います おいしいカレーを提案 - derry(デリー) カテゴリ: フード/ドリンク, ライフスタイル どんなアプリ? 検索したけど沢山お店が出てきて迷ってしまう 検索時の設定が多すぎて調べるのが大変 というありがちな問題を解決した 設定の必要なし お店ではなく そのお店のおすすめメニュー を 起動してシェイクすると 自動的に一品 のみ紹介 別のメニューを見ることも出来ます する、つまり「カレーが食べたい時に起動してもらえれば、一品紹介するので迷わずそこに食べに行ってください」というアプリです。 カレー大好きな同僚達
Jenkins ユーザ・カンファレンス 2015 東京 東京で"JenkinsとPuppet+ServerspecでインフラCI"というタイトルで発表してきました。 Jenkins自体は広い用途で利用されているし、セッションを聞きに来られる方々も様々だと思っていたので、発表の準備でPuppetやServerspecの説明をどれくらいするかで悩んだりしましたが、どうしてCIをしたかったのか、時系列で流れを説明した方が伝わるのではないかと考えこんなスライドになりました。 ビルドの内容はまんま載せたので、同じようなことをやりたい方の参考になれば幸いです。 "ask the speaker"のセッションで @kohsukekawa に質問したり、実際に失敗したビルドログを見て相談にのっていただいたりして感謝です。 サイバード社さんのサーバ構築周りの作りこまれたフローも刺激になりましたし、セッション
今回は後輩エンジニアである @hfm ことおっくんの社外勉強会登壇デビュー戦を応援に行くのが1つ大きな目的。 当日の様子はtogetterから伺えます。肝心の彼の発表ですが、TLから拾う限り やばい話キタ タイトル 地獄感 既につらい 地雷臭 4.0ハラスメント 怖すぎる ガチュアル ただただ、すごい と参加されていた皆様を恐怖のドン底に陥れるには十分な内容だったと感じます。スライドはこちら では実際はどんな感じで進めていたかというところで、スライドの最後やおっくんの後日エントリに先輩エンジニアへの謝辞はありましたが、手助け出来たのはほんの少しで、ほぼ一人で頑張ったというのが合っているかなあと思います。 検証や当日の手順などメンテ完遂までに試行錯誤した記録として、Issueはマイルストン内に大小ありつつも34 issues、1つのIssueに133コメントがついたものもありました、すごい。
Pepabo AdventCalendar 2014の10日目の記事です。昨日はあんちぽサンタ記事を見て入社したlaughkでした。明日はhisaichi5518です。 ソフトウェアのビルド方法について。 今年は特にセキュリティ関連でCVE対応が多かったり 経年したサービスのOSは刷新したいけど同じミドルウェアのバージョンを使いたかったり な時に、rpmをビルドするのはしんどい(弊社は主にRHELクローンなディストリを使っています)ということで、今年は社内でVagrantを利用した、ビルド済ソフトウェアのtarボールを作るのが流行りました。 今日はその一例としてApacheのビルドについて。サンプルのプロジェクトを tnmt/vagrant-build-apache22に置きました。 git clone https://github.com/tnmt/vagrant-build-apach
サーバ/インフラ徹底攻略をご恵贈いただいていました!@mizzyさんありがとうございます。明日会うのにレビュー無しでお会いできないので遅まきながらエントリ。 全体通して、モダンなインフラ運用管理や関連技術を学ぶには必読だなという印象を持ちました。 特に表紙に載っているワード通りですが Infrastructure as Code テスト駆動インフラ&CI Immutable Infrastructure それぞれについて 何故出て来たのか、また話題になっているのか 実際にどういうことをやるのか、どう実践するのか が把握でき、自分で手を動かしながら理解するのに非常によくまとまっています。 自分は情報のキャッチアップと今までの整理としてとても参考になりましたが、入門書としても良書だと思うので、これから上記トピックについて学びたい人にも強くお薦めします。 Infrastracuture as C
1月 CROSS2013でスタート エンジニアサポートCROSS 2013に登壇します でのトークセッション。 内容としては、他のパネルディスカッション登壇者3方の結婚(@kuwa_twさん)や、奥様が第二子ご懐妊(@kazeburoさん)、ノロけ(@mirakuiさん)などのめでたい話を横で聞くという感じでした。 あのセッションの登壇者で未婚は俺だけって知った時の顔(元から知ってたけど) — TSUNEMATSU Shinya (@tnmt) January 18, 2013 mirakuiさんとはこのイベントで初めて知り合ったけど、後の出来事に深く絡んでいくことになるとはこの時はまだ予想もしていなかったのであった。。 2月 突然出てきた #3分で常松 ハッシュタグ mizzyさんの振り返りでもまとめられています。最大の成果ってちょっとおかしいけど。 2/13、この日は忘れもしません、渋
昨日の続きだけど、RHEL 7 beta 1が出てたのでインストールしてみたところ [root@rhel7 ~]# yum info yum-cron Loaded plugins: product-id, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. Available Packages Name : yum-cron Arch : noarch Version : 3.4.3 Release : 106.2.el7 Size : 56 k Repo : rhel-beta/x86_64 Summary : Files needed to run yum updates
CentOSでデイリーのyum自動アップデートのサービスがあるんですが、それがディストリのバージョンによって違うよというお話 CentOS 4.X : yum (yumパッケージ) CentOS 5.X : yum-updated (yum-updatesdパッケージ) CentOS 6.X : yum-cron (yum-cronパッケージ) なんでコロコロと名前変わってしまうん… ちなみにFedora 19でもyum-cronなので、CentOS 7.Xもyum-cronなんじゃないかというのに2,000ガバス。 自動アップデートされ続けても問題なく運用出来るような感じにとは思いますが、そうじゃないシーンも多いので、その時は↑サービスを止めておくとよいのではないでしょうか。 Tags yum
同僚の hsbt, @kentaro, @lamanotrama,@atakaPと6/22発売の「WEB+DB PRESS Vol.75」の第1特集「複雑性の増大と環境の変化に対応する継続的Webサービス改善ガイド」を書きました。 担当場所 4章の "インフラ構成管理の改善 - 実サービスの歴史から学ぶ、段階的な負債改善 - " を @lamanotrama こと黒田さんと担当しました。 内容としては携わっているhetemlの今までの歴史から、実際にどんなことを行なってきたかを紹介しています。ホスティングサービスの例ではありますが、インフラに携わっている人には「あるある…」と共感いただけるものと思います。施策や考え方など、同じような業務に携われてる方々の参考になれば幸いです。 進め方 今回は二人で1章を書いたので、章中の細かい見出しでの分担からスタートしまして、ある程度まとまった後はGoo
同僚の @kentaroさん @kyannyさんと #isucon2 に参加してきました。前回参加したときより結果も良かったですし、多くの気付きを得られ充実したものになりました。 @kyannyさん、@kentaroさんがすでに書かれている内容が詳細に富んでいるので、チームとして取り組んだことはこちらを参照ください。 #isucon2 に参加しました - 刺身☆ブーメランのブログ / @kyanny's blog #isucon2 にチーム「つねさま with 刺身あんちぽ」で参加してきました - delirious thoughts 自分で感じたことは以下です。 良かった点 前回は「とりあえず自分が知っていることで出来そうなこと」をやるといういきあたりバッタリ感がありましたが、今回は以下の部分で改善を感じられました。 そもそも行った施策とその効果を見る 何かよく分からないけど良くなったと
RailsサーバーのUnicornはmasterプロセスにUSR2シグナルを送ると、新しい設定・アプリのリロードを無停止で行うgraceful restartな動きをしてくれます。 この仕組を理解してなかったのでそれのメモ。 ドキュメントも何も見てない時の認識 現行のmasterが新しい設定・アプリをロードした新masterプロセスをforkする 新masterとそこから生えるworkerがreadyになって、新旧のUnicornが処理を行う 頃合いを見て旧masterは勝手に落ちる と思ってたんだけど、実際試してみても3のタイミングになっても旧masterがなかなか落ちてくれない。 旧masterのCPU利用率はだんだん下がってきているので、それがなくなったら落ちるのかと勝手に思ってたけどそうでもない。ウーンとなっててドキュメント見たら普通に書いてありました。 USR2を送った時の動き
ウィークリーFluentdユースケースエントリリレー #1 の記事です。 ウィークリーFluentdユースケースエントリリレーまとめ @oranie さんが in_tail を解説されてたんで、Output plugin から out_file を解説しようかと思います。さまざまな output に対応する Fluentd ですが、一番シンプルで基本的なこのプラグインの動作を今一度確認してみました。 file plugin out_file はその名の通り、他の出力から受け取ったバッファをファイルに書き出すプラグインです。 公式ドキュメントは こちら 設定例はこんな感じです <match pattern> type file path /var/log/fluent/myapp time_slice_format %Y%m%d time_slice_wait 10m time_format
from ssh tips | Carpe Diem sshでの初回認証時ってこういうのが聞かれると思うんですが The authenticity of host '192.168.0.xxx (192.168.0.xxx)' can't be established. RSA key fingerprint is XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX. Are you sure you want to continue connecting (yes/no)? .ssh/configに以下の設定を追加すると、初回認証時の追加確認が要らなくなる。 Host * StrictHostKeyChecking no sshでリモートからコマンド実行する場合に、最初のfingerprint確認が漏れてて失敗するケースが過去何度かあったけど、
@tnmt 次回チューニンガソンは7/1(日)らしいけどご予定は?前回のリベンジを是非! — Michael H. Oshita (@ijin) June 12, 2012 というわけで3回目のJavaではボロボロでしたが、 @ijin さんと再び tuningathon に参加して、優勝してきました。 ルール レギュレーション があるのでそれを参照。refineryていうRoR製CMSのブログ機能のチューニングがお題でした。 やったことを時系列順で ※スコアの移り変わりや、このエントリで触れていない点については相方@ijinさんのエントリが詳しいので、合わせてご参照ください。 rbenv + ruby-build で Ruby 1.9.3-p194 を入れる Railsのアプリサーバにunicornを使う MySQLにいくつかindex追加 計測ツールを眺めてスコア算出方法を調査 Var
OfficialのUpgrading Fedora using yumにも Version updates without using anaconda - such as the yum method described here - is unsupported and not recommended! とある通り、yumで直接アップグレードよりはpreupgradeを使った方がいいです。特に今回、Fedora 16 -> Fedora 17に記載されている以下の変更の関連作業が厄介 /bin → /usr/bin /sbin → /usr/sbin /lib → /usr/lib /lib64 → /usr/lib64 preupgradeだと、リブート後のアップグレードプロセスで上記mergeの処理が自動で入ってるようでした。 というわけで、preupgrade定期報告 sudo
#fluentdcasual に参加しました。 いろんな規模とか使い道があって非常に参考になる勉強会でしたね。 俺もLTをさせてもらいました。 @tagomoris さん、いじってすいません。発表の機会ありがとうございました。 あとプロジェクタが90度傾いた時は「おいしいなー!」ってちょっと思いました! スライドは以下。 @kzk_mover さんが "Fluentd For Small Projects" で5つの便利な使い道を紹介されてましたがその中の "Realtime System Stats" ぽいですかね。 今後も色んな数値の見える化(含グラフ化)から進めてどんどんテンションをあげていきたいと思います! Tags fluentd
rpmパッケージに更新がかかったときに、何の変更があったか知りたいときがあります。 ちょっと調べたら出てきたのでメモ。 rpmの場合は下記のコマンドでChangelogを見ることが出来ます。 rpm -q --changelog パッケージ名 rpm -qp --changelog パッケージファイル名 yumだと、yum-changelogというプラグインがあって、それをインストールすると下記で見れるようになります。ただしCentOSだと5以降、Fedoraも5以降。Fedora 11, 12はyum-plugin-changelogになります。 sudo yum --changelog update パッケージ名 yumの場合は、現在インストールされているバージョンから、アップデート対象のバージョンの差だけ見れるので、確認してからアップデートということが出来るようになります。 Tags
tcp_wrappers 好きの皆さんこんにちわ。 /etc/hosts.allow でアクセス制限管理してますか? ふと、「/etc/hosts.allowでincludeって出来ないのかなあ」と思って man hosts.allow してみたところ、"PATTERNS" のところに A string that begins with a ‘/´ character is treated as a file name. A host name or address is matched if it matches any host name or address pattern listed in the named file. The file format is zero or more lines with zero or more host name or address pat
なんでもありのWebアプリケーション高速化バトル、#isucon 開催のお知らせ 参加経緯 後、@hansode さんを含め、@kyanny さんと俺の3人、”チーム情熱会” で参加してきました。 結果は審査用の3分間ベンチマークがこけたので、参考数値の100,604/minが最終でした。 チームでやれたこと mysqlのパラメータ調整(innodb周りとか) mysql問い合わせ結果をmemcachedでキャッシュ リバースプロキシをapacheからnginxに変更 刺身さんがアプリで入れてくれたクエリキャッシュが一番効果あったと思います。 俺はリバースプロキシの変更をやったくらいで、nginxにしてパフォーマンス下がったときはちょっと涙目だったけどベンチツールのhttpのkeep-alive罠を回避出来たのは良かったかな。 DBがボトルネックになってて原因になるクエリがあったのは早い段
エンジニアは七夕までにCentOS6と巡り逢えるのでしょうか。 今回はいつも使っているCentOSから趣を変えて、Scientific Linuxを触ってみます。色々検証する為にScientific LinuxなVMを簡単につくれる環境をCobbler+Koanを使って準備しました。 Cobbler+Koan Cobbler, Koanについては以前(っても結構前ですが)こんな発表をしたことがありまして、内容についてはそちらが参考になればと思います。CentOSと同じくScientific LinuxもRHELクローンなので、同じ方法が使えるというわけです。 環境 試した環境は1台のCentOS5.6物理サーバー上に、Cobbler+KoanがセットアップされたKVMの仮想母艦機です。 実際の流れ Cobbler+Koanのセットアップ手順やKVM環境については省略しますが、mizzyさん
DevOpsカンファレンスに行ってきました。 サイバーエージェントさんの会議室、スクリーン3面ってすごいなー。 広義の意味でのDevOpsの考え方がおよぶ範囲は開発者・運用者だけでなく、ヘルプデスク/顧客サポートやマネージャにまであるみたいですが、今回自分は狭義の意味での”開発者・運用者の壁を取り払っていくには”という視点で各社の取り組みを聞いてきました。 ひとまず今の自分は役割的にOpsで運用者の立ち位置なので、まずは他社の取り組みから興味があったところについて書くと例えば運用者には切っても切り離せないサービスの運用監視について アウトソースしてたけど、自分達で見るために内製化した 最初からずっと自分たちで見てるし、今もそう だとか、対応を取ってみても アラート一次受けはDev側が行って必要な場合にOpsまでエスカレーション アラートは完全Ops側で処理 だとか色々ケースがあるんだなーと
Re: 停止中のvm(kvm)のネットワーク設定を書き換える習作 id:lamanotramaがこんなエントリを書いていたので、勉強がてらpythonで書きなおしてみました。 virt-cloneした後のネットワーク設定をスクリプト一発でなんとかするヤツ。 試した環境はCentOS5.6です。 libvirtとlibguestfs使ってるので入ってない時はインストール sudo yum --enablerepo=epel install libvirt-python python-libguestfs lxml使ってるので入ってない時はインストール sudo yum install python-lxml やってることは domain(vm)が停止してるか確認 ((動いてるVMを直接libguestfsでいじると起動しなくなるみたいなので注意)) domainのxml定義からイメージファイ
CentOSなどrpmを使っているシステムで、欲しいツールのrpmが見つからない、使いたいツールのバージョンが古いときに、rpmbuildを使って望みのrpmを作成することが出来ます。 ウェブを探せば色々と情報はあるんですが、ざっとスタートするときに必要な流れをまとめて書いてみることにしました。 専用のビルド環境 専用の環境を準備た方が吉です。centXbuildXXみたいな名前でVMを作ってます。 cent4build32.tnmt.local cent5build64.tnmt.local とか。 パッケージの依存性もあるので、あまりサードパーティのyumリポジトリなどを追加しないか、実環境と同じリポジトリのみ有効にするとよいです。複数サービスがあったらそれごとにVMを作るのもありかと思います。 必要なパッケージ類のインストール rpmbulidに必要なパッケージ類をインストールします
欲しいrpmが無かったりバージョンが古かったりするときにrpmを自前で作成する場合、こういうことがあるかと思います。 rpmbuild --rebuild foovar-0.0.1.src.rpm error: Failed build dependencies: bzip2-devel is needed by foovar-0.0.1.i386 sqlite2-devel >= 2.8.0 is needed by foovar-0.0.1.i386 libedit-devel is needed by foovar-0.0.1.i386 libtool-ltdl-devel is needed by foovar-0.0.1.i386 libc-client-devel is needed by foovar-0.0.1.i386 mysql-devel >= 4.1.0 is ne
次のページ
このページを最初にブックマークしてみませんか?
『hack in 3 minutes』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く