kakakakakku blog

Weekly Tech Blog: Keep on Learning!

2016-01-01から1年間の記事一覧

Well-Architected を徹底しようと誓った「AWS Premier Night #1」だった

水曜日に「AWS Premier Night #1」に参加してきた.120人枠に対して2倍の参加登録があった人気の勉強会で,参加できて良かったなと思っている.個人的には Well-Architected の話と EBS の話が特に良かった. classmethod.connpass.com AWS Well-Architected…

「JAWS-UG おコンテナ支部 #5」に参加して ECS の運用事例を聞いてきた

月曜日に「JAWS-UG おコンテナ支部 #5」に参加してきた.全体的に実践的な Ops の話で,凄く勉強になったのと同時に,未だに本番環境での運用経験がない僕にとっては難しい話も多かった.もう既に1年以上の運用ノウハウを持ってるプロダクトも多いし,ECS を…

AWS Webinars 開催情報を取得する hubot-aws-webinars を作った

積極的に Webinars (AWS Black Belt Online Seminar) に参加したいなーと思っているんだけど,Webinars に特化した RSS が無くて,開催情報を確認するのが面倒だったため,Hubot に任せることにした.完全に個人用だけど npm にパッケージを公開してみた. g…

社内イベントで「ガジェット紹介と Infrastructure CI の話」という謎の LT をした

今日は社内イベントで LT をする機会があって「ガジェット紹介と Infrastructure CI の話」という謎のタイトルで話してきた.せっかくの LT 枠だからネタ要素多めにしようと思ってて,前半のガジェット紹介は全てネタで突っ走った.結構ウケてて良かったなと…

「Prometheus Casual Talks #1」に参加して Prometheus の運用事例を聞いてきた

6/14 に開催された「Prometheus Casual Talks #1」に参加してきた.既に Prometheus を1年以上運用してる話などもあって,ハイレベルな話を聞くことができた.勉強会の後に実際に Prometheus を動かしてみたり,サンプルで Exporters を実装してみたりしてか…

月曜朝から AWS を学べる最高の勉強会「JAWS-UG 朝会 #3」に参加してきた

今日は朝 7:30 から「JAWS-UG 朝会 #3」に参加してきた!出勤前に開催される勉強会って個人的には初だったけど,早起きできるし,スッキリした時間帯にインプットができるし,最高なのでは?という感じだった.何よりも,朝から意識が高まって,気持よく仕事…

Chef で mackerel-agent をインストールして Plugins を動かしてみた

Chef で mackerel-agent と mackerel-agent-plugins をインストールした.特にハマる点は無く,サクッとインストールできたけど,プロビジョニングする前に公式クックブックを読んだりもした.簡単にまとめておこうと思う. github.com Berksfile cookbook '…

Zabbix API で Shell からメンテナンスを操作する

デプロイ時に nginx を再起動するなど,Zabbix の監視トリガーに該当するオペレーションを実行する場合,無駄にアラートが鳴ってしまう場合がある.正しくは Zabbix のメンテナンスを作成することで,メトリクスを収集しながら監視トリガーに該当しないよう…

curl で Chef をインストールする時にバージョンを指定する

Chef Client の最新バージョンが 12.10.24 から 12.11.18 に変わったらしく,シェル経由のオムニバスインストーラーを使うと最新 12.11.18 がインストールされるようになっていた. Chef Downloads コンテナに対して実行してる chef-solo が落ちるようになっ…

speedtest-cli でターミナルからネット速度を計測する

普段ネットが遅いなぁーと感じるときなど,今までは適当にスピードテストツールを検索して使っていたけど,毎回探すのも面倒だし,ブラウザを起動するのも面倒だし,もっと簡単に確認したいなと思っていた. www.musen-lan.com speedtest-cli speedtest-cli …

"Disagree & Commit" の重要性を感じた /「エンジニアとして世界の最前線で働く選択肢」を読んだ

今週休暇を取っていることもあり,エンジニアとして今後のキャリアをどう進めていこうかと考えていて,自分の価値観をマインドマップに描いてみたり,関心のあるポジションに求められている Requirements を見て自分に不足している経験を洗い出してみたりし…

達海猛からリーダー論を学ぶ /「GIANT KILLING」と「大金星本」を読んだ

最近「GIANT KILLING(ジャイキリ)」にハマりにハマっている.ジャイキリとの出会いは会社の先輩に紹介されたことで,サッカー漫画という側面だけじゃなく,組織論やリーダー論を学べる側面もあって是非読むと良いとのことだった.最初あまりサッカーに関心…

Ring ZERO で Keynote を操作する

指輪型ウェアラブルデバイスの Ring ZERO を手に入れたので,少し遊んでみた. logbar.jp 初代 Ring と比較すると Kickstarter で発表された初代 Ring は完全に銀メッキで仕上げられていて,凄く指輪感が出ているけど,現在最新版として発売されている Ring …

「管理画面チラ見せ♡ナイト #3」に参加して管理画面をもっと好きになろうと思った

今日は「管理画面チラ見せ♡ナイト #3」に参加してきた.各社どういうモチベーションで管理画面を開発しているんだろうという話が聞きたくて,倍率2倍の人気勉強会だったけど,先着順で入れて良かったー!簡単にまとめておこうと思う. connpass.com ベストテ…

Chef で nginx-build を使って nginx をインストールしてみた

前から気になってた nginx-build を少し使ってみて,非常に良さそうだったので,Chef から実行できるようにしてみた.レシピはもっと改善して書けそう.nginx-build に関しては以下を参照で良いかと. github.com tech.mercari.com レシピ 以下に nginx 1.9.…

AWS CLI で ELB に register しているインスタンスを操作するスクリプトを書いた

AWS CLI を使って ELB からインスタンスを deregister したり register したりするスクリプトを shell で書いてみた.ポイントは ELB の waiter 部分で,実際にインスタンスを deregister してもすぐには反映されないため,数秒間隔でチェックをするようにし…

ELB の Connection Draining 機能を試した

AWS

Connection Draining とは ELB には Connection Draining という機能がある.2014年3月に追加された機能で,現在新規に ELB を作成するとデフォルトで有効になっている(300秒).ただし,2014年3月時点で既に稼働していた ELB に関しては無効になっているた…

IAM で ELB の一部のアクションには ARN を指定できなかった

AWS

今日 IAM (AWS Identity and Access Management) のポリシーを書いてたんだけど,ELB (Elastic Load Balancing) のポリシーの仕様で基本的な勘違いをしていてハマった.開発者ガイドを読んだら全て書いてあったんだけど,自戒の念も含めて書いておく. NG ま…

APC (Alternative PHP Cache) をモニタリングする

PHP

2016年にもなって APC (Alternative PHP Cache) の話かよ!って感じもするけど,最近 APC の調査していて,個人的に学びが多かったので,主に apc.php に関してまとめておこうと思う. 前提 APC (Alternative PHP Cache) PHP の実行コード(実行時に生成する…

headers-more-nginx-module でヘッダー情報を変更する

github.com nginx でヘッダー情報を変更できる headers-more-nginx-module を試してみた.nginx に標準に入っている Module ngx_http_headers_module と比べて Content-Type や Content-Length などのビルトインヘッダーを消すことができる点にメリットがあ…

knife-solo を実行すると Bad configuration option: ControlPersist と出る

knife-solo を最新 v0.5.1 に更新して knife solo cook を実行したら rsync でエラーになった.具体的には ControlPersist の設定でエラーになっていた. $ knife solo cook xxx (中略) Uploading the kitchen... command-line: line 0: Bad configuration…

rbenv plugin としてインストールした ruby-build が動かないときは ${RBENV_ROOT} を疑う

とある Ruby 環境(長年稼働している)で以前から rbenv + ruby-build の挙動が微妙で,このまま放置するのはダメだろう!と勝手に奮起して調べてみた. 結論から言うと /etc/profile に RBENV_ROOT の設定がされていて悪さをしていた.RBENV_ROOT の存在に…

Docker Compose を使って HAProxy に入門した

今日から GW だし,今まで試したことの無かった HAProxy に入門してみた.今回は複数台ある nginx に対してリクエストを分散させるだけで,初歩的な動作確認になっている. 環境 今さら Vagrant 環境を構築するのも面倒で,今回は Docker を使おうと思ったの…

Zabbix API を Bash と Ruby で試した

最近 Zabbix の設定を精査したり,ロール別にスクリーンを作って可視化を徹底している中で,Zabbix の操作全般を自動化してもっと効率良く作業をしたいなと感じていた.実は今まで使ったことがなかった Zabbix API を検証してみたので,メモを残しておこうと…

軽さは正義!を口癖にしよう /「Alpine Linux Meetup Tokyo #1」に参加した

今すぐに導入する機会はなさそうだけど,前から気になってた Alpine Linux の情報が欲しくて「Alpine Linux Meetup Tokyo #1」に参加してきた.簡単にメモっておこうと思う. alpine-linux-meetup.connpass.com アイスブレイク @tori_cluster 最初は Alpine …

CircleCI + Docker で Infrastructure CI (Chef + Serverspec) 環境を構築した

近況 3月から DevOps 関連の技術的負債の解消に取り組んでいて,動かなくなった Chef を直したり,秘伝のタレ(手動)で構築されたサーバ設定を Chef にリバースエンジニアリングしたり,Serverspec を導入して稼働中のサーバの差異を確認したりしている. …

Packer を使って Vagrant のディスク容量を拡張する

開発環境を Vagrant で立てている中で,多くのミドルウェアを1個の仮想環境に押し込めてしまっている関係上,ディスク容量が足りなくてツライという状況があった. プロセッサーとメモリは Vagrantfile に書くと拡張できるが,ディスクは簡単には拡張できず…

Catarse でクラウドファンディングサービスを動かしてみた

OSS で公開されているクラウドファンディング専用の Rails アプリケーション "Catarse" をローカルで動かしてみた. まだ詳細な機能までは確認できてなくてデバッグ中だけど,基本機能は揃っていて普通によくできてるなという印象を受けた.技術スタックも面…

Chef で更新したファイルを /var/chef/backup から戻す

Chef の template でファイルを更新する場合,デフォルトで5世代まで Chef が自動的にバックアップしてくれていることを知った. 最高に便利な機能だ...! 昔に手動で構築されて期待値が曖昧になっている環境に対してリバースエンジニアリング的に Chef + Se…

php-fpm のパラメータを調査した

PHP

php-fpm (FastCGI Process Manager) の調査をしていて,学びが多かったので,簡単にまとめておこうと思う.予想していた以上にパフォーマンスが出てないことに驚いたけど,SRE として,インフラ改善 + アプリケーション改善の施策を考えて実行していかないと…