一見不可解な TLS 証明書失効

この記事は、所属する会社の社内ブログに投稿した内容を一部改変したものです。

遭遇した事象

Prometheus と https://github.com/prometheus/blackbox_exporter を使って TLS サーバー証明書の有効性と有効期限を網羅的に監視しています。最近 blackbox_exporter が blog.cookpad.dk:443 の証明書の期限が切れている、と報告してきました。しかし同時に blackbox_exporter は TLS 接続には成功している、と報告していたのです。確認のため、Chrome で https://blog.cookpad.dk/ にアクセスしてみると、問題ありませんでした。Firefox でも同様でした。次に手元の MacBook Pro から cURL してみます。

2019年振り返り

仕事

2年目 (新卒1.8ヶ月) で引き続き SRE グループで色々をやった。今年は組織やチーム体制が変わったり、メンバーが別のプロジェクトに一時的に参加することになったりということが起きて、これは自分にとってはじめてのことだった。結果、去年までしっかりと理解できていなかった ECS 周りや、自前のバッチ処理システム、非同期ジョブ実行システムといった基盤も運用したり改善することも業務のスコープとなった。基盤勉強会という勉強会を何度かやって大枠をつかんだ後は、業務で必要に応じてコードを読んだり PR を出す過程で理解していった。まだ Fargate は多くのユースケースで実用段階ではなく、大半のコンテナは EC2 で動かす必要があり、それゆえに EC2 インスタンスの管理は ASG や Spot Fleet を使いつつもある程度自前でカバーしていかなければならず、そのためのシステムが多数あることを知って驚いた。このあたりは最近 ASG の機能が増えたり、今後 ECS がよくなっていくことで、いくつかのシステムが不要となりシンプルになっていく可能性はある。

英会話を始めて1年弱で辞めた

少し長くなってしまったがその経緯をまとめた。

第4回 WSA 研究会に参加した

開催概要: https://websystemarchitecture.hatenablog.jp/entry/2019/02/26/100725

自分の発表

とくに手持ちの実装や実装構想といったものがなかったため、最近よく考えていたカオスエンジニアリングについての整理を試みた。Netflix による “Chaos Engineering” ペーパーでは、すでにカオスエンジニアリングと同じようなことを Google や Amazon といった企業はすでにやっていることを知っていてそれをカオスエンジニアリングと名付けたと書いてある。その起源は明らかに「レジリエンス」のキーワードに関係していて、レジリエンスエンジニアリングという体系化された学問があることを知った。

Slack 上で AWS への単純な bot 攻撃に対処する

業務で使っているインフラ (AWS) に対して、たまに日本のリソースに対して海外の IP からスパムリクエストや明らかな攻撃が来ることがある。リクエスト元 IP が分散していない場合は IP ベースでブロックで十分である。ブロックするレイヤーはいくつかあるが、最近だと VPC の NACL で ban することが多い。NACL の操作を誤ると事故になりかねないので、業務ではセカンドオピニオンも取り入れつつ操作している。攻撃が判明する度に VPC のコンソールを開きつつチャットで誰かの意見を求めるというのは非効率なので、なんらかのソフトウェアを書くことでいい感じにしたいと思っていた。

Envoy proxy と consul-template を使った Fault injection を試した

モチベーション

サービスメッシュのための Side-car proxy として有名な Envoy proxy (以下 Envoy) がある。Envoy は Observability や Resiliency など便利な機能の他に、Fault Injection 機能を持つ。この Fault injection は、システム全体の可用性を向上させるためのシステム間通信の障害のエミュレートに使われるものであり、これは一般に Chaos Engineering や Resiliency Testing と呼ばれる。

OS ほんのちょっとだけ分かるための JOS

修論を書き終えたあたりから、春休みに何をするか考えていた。4月からソフトウェアエンジニアとして働き、主にインフラの仕事をする予定だったので、まとまった時間が必要かつ将来役に立ちそうなことを考えた。

ちょうどその頃に turingcomplete.fm を聞いて、OS を学びたい気持ちになった。そうして始めたのが MIT の 6.828: Operating System Engineering の授業である。JOS という xv6 ライクな小さい x86 OS のスケルトンが用意されており、必要な部分を実装していくことが課題である。シェルの動作までを完成させた後、最終課題としてパケット送受信かオリジナル機能を実装して終了ということになっている。

クックパッド株式会社に新卒入社した

全体会議の自己紹介で、普段は喋れないが酒を飲むと喋れます、そしてこれは社会人になったので克服したいと話したら、その後のウェルカムパーティーで喋れる? 酒飲んでる? と人々が話しかけてくれたので良かった。

採用学を読んだ

採用学を読んだ。この本では、採用を定義した上で、現代の日本における採用事情の考察・最近の採用手法の変化・より良い採用のための考え方などが述べられており、一読すべき価値のある本だと思う。

この記事では、一応新卒採用を経験した身として、就活時に浮かんだいくつかの疑問を、採用学を読んで上で改めて考えていく。それが正解かどうかは分からない。書き終えてみると当たり前のことを言っているようにも見える。

2017 年振り返り

去年の目標はこちら