Empowered by expect

希望は体力

2021年振り返り

アドベントカレンダーも書き終えたので今年の振り返りエントリーです。

転職

初めての転職を実績解除しました。
オンプレベースなデータセンター運用事業からAWSを中心としたクラウドCIerになりました。AWSの知識が何年何周も遅れているので今年はインプットに注力した1年でした。それでもまだまだ学ぶことが多くて大変です。
大きめのSIerからベンチャーな会社に移ったのでいろいろと違いもあり面白楽しいです。

帯状疱疹

夏の終わりから長いことのど風邪をひいてました。体力落ちた状態で流れが良くなかったのか秋に帯状疱疹を発症してしまいました。
皮膚の発疹はほとんどなかったのですが、胸痛がひどく寝付けない感じで一ヶ月くらい足をバタバタさせる生活でした。ほぼ2ヶ月棒に振ってしまいもったいなかったです。50歳以上になるとワクチン受けられるらしいですが、心身の調子を落としすぎずに過ごすことの大事さをあらためて感じました。

今年読んで良かった本

転職してAWSを学び直しているのでいろいろと読み直していますが即戦力で役に立ったものを挙げておきます。

AWSではじめるインフラ構築入門 安全で堅牢な本番環境のつくり方

www.shoeisha.co.jp

まずはこの本に沿って手を動かすのが分かりやすかったです。
自分の感覚で作業してしまうと「先にセキュリティグループ作っておかないとここで選択肢に出てこないのかー」といったちょっとしたことで引っかかってしまうので、全体の流れを見通した手順をなぞるのは理解がスムーズでとても良く何度も見返している一冊です。
自分の場合はこの本でやった内容をCloudShell上のaws cliでの手順に落とし込むことでかなり理解が深まりました。

Amazon Web Servicesインフラサービス活用大全 システム構築/自動化、データストア、高信頼化

book.impress.co.jp

自動化しないとやる気がしない病なので読みました。オンプレの時代に使っていたitamaeやStackStormとはまた異なるAWSで使える自動化手段をいろいろと学ぶのにとても良いと思います。CloudFormationはもちろんカバーする範囲がとても広いので、自分が使っているサービスの部分から読んでいくと良いかと思います。目の前のちっさい作業を自動化するのではなく最終的に目指す設計を示してゴールを目指すという各章の流れも分かりやすくて良いと思います。

AWSの薄い本 IAMのマニアックな話

AWSの薄い本Ⅱ アカウントセキュリティのベーシックセオリー

takuros.booth.pm
takuros.booth.pm

IAM自体は知っていましたがイマドキの機能範囲やベストプラクティスのようなものは全く分かっていなかったので2冊続けて読みました。このテーマでここまで詳しくたっぷりとまとまった本として読めるのはとてもありがたかったです。長くAWSを遣い続けている方は何年もかけて差分更新で知識を得て貯めてこられたと思いますが、一気に追いつきたいという時にまとまっている情報って意外と無いんですよ。

Infrastructure Monitoring with Amazon CloudWatch: Effectively monitor your AWS infrastructure to optimize resource allocation, detect anomalies, and set automated actions

www.kinokuniya.co.jp

上で挙げたのIAMもですがこうした縁の下の力持ち的サービスはなかなかまとまった情報を得るのが難しい気がします。こちらはCloudWatchの本ですがAWSの他のサービスを監視対象とする場合や連携させる場合についてマネジメントコンソールのスクショを豊富に挟みながら丁寧に解説してくれます。コンソールは頻繁にデザイン変わりますしスクショは英語なのでそのまま使えるわけでもないですが、CloudWatchでどこまでできるのか、を知ることのできるかなり良い本だと思います。

あとはSSMの本が欲しいです。公式の1578ページある英語PDFを読む気がするかと言うとちょっと私の力では...

直近の学びのテーマ

レジリエンスエンジニアリングについては引き続き調べ学びを続けています。そこから派生して、直近ではポストモーテムの実施方法について学んでいます。

今になって Tugboat.GTD のMeeting機能がよかったんじゃないかと思ったり。Etsyさんの morgue (https://github.com/etsy/morgue) はめっちゃ良さそうですがアーカイブされてて開発終了のようだったり....

やはり Jeli\.io に注目ですかね。予算欲しいです..
www.jeli.io

Jeliさんは先日Post Incidentの振り返り実施ガイドとして61ページの資料"Howie"を公開されました。"気構え"のような事にも多々触れていて、憂鬱になりがちなインシデント対応~振り返りを的確に行うための留意事項がまとまっています。こうしてまとまった形にしていただけるとチームでの共有もしやすくてありがたいですね。
www.jeli.io

結び

リモート登壇が苦手、というか設備的に弱めなのもありついに今年は登壇無しでおわってしまいました。インプット重視の一年だったからとも言えますが。
来年は発信していけるように頑張ります。まずはo11ycon2022のCFPに出そうかな...40分は無理ですが...

あと帯状疱疹に懲りたので運動と食事に留意した状態を継続的に維持していくことも頑張ります。

Talisman

gitで機微情報をアップしてしまって大変、という話は数多ありますがそういった事故を防いでくれるツールがTalismanです。
githookとして動作し、認証情報などが含まれる場合に警告を表示して中断します。開発元はあのThoughtworksです。

https://thoughtworks.github.io/talisman/

2019/10/02にバージョン 1.0.0に到達しました。
自分は個別のローカルレポジトリごとに導入しています。

curl https://thoughtworks.github.io/talisman/install.sh > ~/install-talisman.sh
chmod +x ~/install-talisman.sh
cd my-git-project
~/install-talisman.sh

以上でgit hookとしてTalismanが導入されます。グローバルに共通して導入する場合はGitHubのREADMEを参照してください。
検知ルールをカスタマイズする場合は、 https://github.com/thoughtworks/talisman/blob/master/detector/ 以下を編集してください。例えばファイル名や拡張子に関するルールは filename_detector.go に記述があります。

動作を見てみましょう。
ここでは拡張子 .pem の(空)ファイルを追加してpushを行ってみます。

$ git commit -m "add hoge.pem"
[master d1e81ab] add hoge.pem
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 hoge.pem
$ git push -u foo
The following errors were detected in hoge.pem
         The file name "hoge.pem" failed checks against the pattern ^.+\.pem$

error: failed to push some refs to 'git@some:where/far.git'

検知されてpushはfailしました。
拡張子だけでなく、鍵ファイルの内容など様々なdetectorが用意されています。
githookで手前で防ぐことができ便利ですので、興味のある方はお試しください。

2020年の振り返り

2019年以上に低入力低出力な一年でした。
コロナの影響もありましたが、前年の異動以来もろもろうまく行ってない感が拭えません。厳しいですな...
そんな中ですが、2020年の振り返りと良かった本をまとめます。

ssmjpでレジリエンスの勉強成果を発表した

w4yh.hatenablog.com
コロナ前ギリギリのオンサイト回で登壇しました。理論?寄りの話なので話す機会を探っていましたが懐の深いssmjpさんでできました。20分もいただきましてありがとうございました。
勉強の進捗報告みたいな内容でしたが、長いこと学びながら悩んだことを一つ形にできたので良かったです。またその後の学びをアウトプットしていきたいです。

レジリエンスエンジニアリング関連の読み物

レジリエンスエンジニアリング関係では芳賀先生の本をよく読んでいますが、今年も2冊読みました。そのうち一冊をご紹介します。
www.amazon.co.jp
2009年に出た本ですがエラーパターンについては非常に"あるある"な事例を、対策については構造的で体系立ったお話が見開き2ページに1トピックでテンポ良く展開されます。自動化やシステム化の齋の注意と対策にそのままあてはまる内容も多く学びの多い一冊です。

ちなみに芳賀先生のもう一冊、2020年7月に出たこちらも学びが深く、現在読み込み中です。
www.amazon.co.jp


レジリエンスエンジニアリング関係ではもうお一人、ホルナゲル先生の本もよく読むのですが、そのうちETTO本と言われる一冊について2020年11月にttkzwさんによる秀逸なブログエントリがありました。
heartbeats.jp
レジリエンスエンジニアリング関連の理論を実際のIT業務に紐付けて考えるのはなかなか頭を使い大変なのですが、こちらのブログではETTO理論に絞って現実に迫られる選択、もしくは気付かないうちにしてしまっている選択にスコープを当てて見事に解説されています。ご興味のあるかたはぜひご一読を。

念願の一冊

一年前に書いた2019年のまとめブログの中で、読んだ本の中から BUID TRAP(英語版)を挙げて「日本語化されて欲しいな~」と書いていました。
w4yh.hatenablog.com

嬉しいことに2020年10月に日本語版が出ました。やったね!図が白黒になったりはしていますが内容は原著の明確でテンポの良い語りっぷりを踏まえた小気味良いものに仕上がっています。
www.oreilly.co.jp

まとめ

低入力低出力な中、なんとかレジリエンスエンジニアリング関連は興味を持って触れ続けることができた、という感じでしょうか。この学びをインフラ自動化の実践
に結びつけていきたい、というのが学びのきっかけでもあるので引き続き頑張って行こうと思います。ssmjpさんとか吉祥寺.pmさんとかでの発表を目指したいと思います。

ssmjp 202003回でレジリエンスの勉強報告をしました

2019年は低インプット低アウトプットだったなあ..と反省していた年末年始、正月の勢いでssmjpさんへ発表を申し込んでみました。ありがたいことに今回機会いただけて発表してきました。理屈っぽい話なのでどこで話すべきかなあ..と悩んでいたネタだったのでssmjpさんの懐の深さはありがたいです。

ssmjp.connpass.com

レジリエンスエンジニアリングおよびSafety-IIについてはここ何年か勉強続けています。きっかけは、スライドの中でも引用元として記載したNHKの"視点・論点"という番組でした。朝4時20分からの10分番組ですが、たまたま見ていて内容に刺激されて一気に目が覚めました。NHKオンデマンドにまた出ないかな..

www.nhk.or.jp

学ぶ中で私が引っかかった点から、以下の二つについて触れました。
・ITインフラ運用の自動化の文脈ではSafety-Iの固定的な世界が前提とされていないか
Kubernetesって自立的で柔軟でということになっているけどそうなのか。設定次第とか分散トレーシングの活用次第とか(暗黙の)条件があるのではないか

今回の発表では、自動化/Auto-remediationとか自立的という意味でクラスタリングソフトを引き合いに出して"クラスタリングソフトを導入すればレジリエントなのか"という仮説を検証してみる流れでお話してみました。私が長いこと引っかかっていた議論を独白->反省するという若干照れもある内容でした。初めて聞く方にはおまぬけっぽく感じられないか不安でしたが、どうでしたかね... ssmjpのSlackでは好意的なリアクションいただけていて心安まりました。

speakerdeck.com

(時間調整で直前にスライドを何枚か削りました。参考資料にあるkumagiさんの分散システムのスライドが本文中で参照されていませんが、スプリットブレインあたりの文脈で参照させていただきました。)

こういった話にお詳しい方にどういう場でお会いできるのかがイマイチ掴めていないのですが、ご教示くださる方や一緒に学んでくださる方がいらしたらぜひ知りたいです。もしくはご興味持ってくださる方が現れるきっかけとなればとても嬉しいです。さらにはこういった視点での運用改善のおしごとの場があればぜひお声がけいただきたいです。

発表直後なので達成感というかちょっとテンションが高くなっています。同じ流れの話題でssmjpさんとか吉祥寺pmさんとかの懐の広い場での発表をまた申し込んじゃおうかなー

Speakerdeckではリンクがクリックできないので、参考資料へのリンクを以下に並べておきます。

書籍)
www.amazon.co.jp

www.amazon.co.jp

www.amazon.co.jp

www.amazon.co.jp

Web)

www.slideshare.net

www.slideshare.net

cfgmgmtcamp2020の資料リンク集(随時追加)

さっそくですがcfgmgmtcampの発表資料をまとめていきます。
12トラックもあるのでまだかなり抜けもありますが。
公式サイト: https://cfgmgmtcamp.eu/ghent2020/


20200203

09:40-

untitled config game
speakerdeck.com

11:40-12:30

Cloud Native Configuration Management
speakerdeck.com

12:45-12:50(LT)

YAML Magic

www.slideshare.net

12:50-12:55(LT)

Devops is dead, Servers are dying, and I don't feel so great myself.
(201808)
noti.st

12:55–13:00(LT)

Rethinking Open Source in the Age of Cloud
(201911)

www.slideshare.net

14:25–

To Foreman 2.0 and beyond: an architecture perspective
https://cfp.cfgmgmtcamp.be/media/foreman-architecture-to-2.0-and-beyond.pdf

14:50-

YANG and NETCONF
https://blog.lieter.nl/presentations/cfgmgmtcamp-YANG-NETCONF.pdf

Terraform Without The Mess
jen20.dev

Ansible Collaboration within your Organization
https://cfp.cfgmgmtcamp.be/media/PulpAnsible_ConfigMgmtCamp2020.pdf

Achieving fully hands-off deployment of an Icinga 2 cluster using Puppet
https://landervdb.github.io/cfgmgmtcamp2020/

16:50-

Config management for_kubernetes: GitOps + Helm

www.slideshare.net

Rollout all your Prometheus exporters with Puppet!
github.com

20200204

09:30-

I got 99 problems and a bash DSL ain't one of them
( http://scribes.tweetscriber.com/tdpauw/707 )

10:20–

How Convenience Is Killing Open Standards

www.slideshare.net

12:20-

Web Application Firewall - Friend of your DevOps pipeline?
(201805)

www.slideshare.net

12:30–12:35(LT)

Bare Metal Provisioning with Ansible and Cobbler
https://ffrank.github.io/presentations/2020-02-ansible-bare-metal/ansible-bare-metal.pdf

12:45–12:50(LT)

Terraform, Pulumi... but what do we really need!?
(202001)
www.dropbox.com

12:45-

seccomp — Your Next Layer of Defense
xeraa.net

14:00-

Lessons learned from testing over 200,000 lines of Infrastructure Code
cloud.mail.ru

A RUDDER walkthrough: manage your configurations through compliance
speakerdeck.com

16:00-

Running Puppet from mgmt on overdrive
ffrank.github.io

Ansible with ARA on RHEL7/CentOS7, welcome to hell!
speakerdeck.com

DeliveryConfの資料まとめ(追加中)

明日2/3からのcfgmgmtcampも楽しみですが、先に行われたDeliveryConfも良い発表揃いだったので資料を整理しておきます。
DeliveryConf | Continuous Integration / Continuous Delivery conference

発表はすべて公式チャンネルで動画が公開されています。
各発表の後に20分のグループディスカッションという構成だったので動画を追った方が現場感もあって良いと思います。
DeliveryConf - YouTube

同じタイトルであちこちで発表されている有名人の多いイベントだったので最新ではないかもしれない資料リンクも混じっていますが、以下イベントタイムテーブル順に。

20190121

Main Keynote:
What Will The Next 10 Years Of Continuous Delivery Look Like? - Dave Farley, Jez Humble

www.slideshare.net

10:30 - 11:00

A Whole Team Approach to Testing in Continuous Delivery - Lisa Crispin
(201809)
https://lisacrispin.com/wp-content/uploads/2018/09/VermontCodeCampTestDevOpsCompressed.pdf

Lessons I learned about Automating Database Deployments - Bob Walker


CI/CD for PowerShell That Isn't a Mess - Thomas Rayner

11:40 - 12:10

Pragmatic Pipeline Security - James Wickett


The Last Bottleneck of Continuous Delivery - Casey Lee, Christine Sills


Legacy is a Frame of Mind - Laura Santamaria
speaking.nimbinatus.com

14:00 - 14:30

Continuous Delivery for Azure Serverless / PaaS - Mandy Riso


How we fixed our broken deployment process - Ryan Rousseau
broken.rousseau.dev

Where's the map of your pipeline? - Steve Pereira

15:10 - 15:40

Continuous Delivery for Machine Learning: Patterns and Pains - Emily Gorcenski


Real World DevOps - Abel Wang

(同テーマのPodcast)
cloudskills.io


Lessons Learned when a Dev does Opsy Things - Cora Fedesna
noti.st

16:20 - 16:50

CICD-ing My VAX - Cat Swetel, Jimmy Judd


Progressive Delivery Patterns In The Wild - Dave Karow
speakerdeck.com

Continuous Delivery with GitHub Actions - Sean Sullivan
speakerdeck.com

17:30 - 18:00

Reimagining Continuous {Integration | Delivery | Deployment | Whatever} - Bryan Liles

20190122

Keynote Panel

Dr. Rebecca Parsons, Dr. Nicole Forsgren, Caleb Hailey, Brooke Treadgold

10:30 - 11:00

What is quality, and how should we build it in? - Jez Humble, Maryam Umar

www.slideshare.net

Localdev And A Tight Feedback Loop For Happy Customers And Happy Developers - Patrick Gray


CI/CD Agility and Controlling Pipeline Sprawl - Angel Rivera

11:40 - 12:10

Taking Care of Code ... More and More Code - Jessica Kerr


Building Deployment Pipelines with Jenkins & Spinnaker - Isaac Mosquera


Go Faster, Be Safer: Release Velocity And Psychological Safety - Heidi Waterhouse

14:00 - 14:30

Continuous Delivery - Show, Don't Tell - James Relph
github.com

Tools for Builders: Crafting User Experiences for Technical Practitioners - John Ryan


Project Smooth - Streamlined Software Delivery Initiative - Sonali Shrivastava

15:10 - 15:40

How secure is your build/server? - Patrick Debois

www.slideshare.net

Blue is the New Green - DJ Schleen
(201905)

www.slideshare.net


CI/CD + ML == MLOps - The Way to Speed Bringing Machine Learning to Production - David Aronchick

16:40 - 17:10

Fast & simple: observing code & infra deployments at Honeycomb - Liz Fong-Jones, Danyel Fisher

2019年に読んで印象に残った本

前の投稿に書いたとおり2019年は低入力低出力だったのですが、本だけはある程度読んでいました。印象に残っている本を何冊がご紹介します。

1. Escaping the Build TRAP

Escaping the Build Trap: How Effective Product Management Creates Real Value (English Edition)

Escaping the Build Trap: How Effective Product Management Creates Real Value (English Edition)

  • 作者:Melissa Perri
  • 出版社/メーカー: O'Reilly Media
  • 発売日: 2018/11/01
  • メディア: Kindle
"プロダクトマネージーが知っておくべき○○の事"のような感じでまとめられたテンポの良い本です。章毎の模式図が分かりやすくメッセージが絞られていて分かりやすいです。PdMアンチパターンのところなどは指摘が鋭くうなってしまいました(例:"The Mini-CEO")。日本語版出ないかなあ。

2. 全図解トヨタ生産工場〔生産管理・品質管理〕のしくみ

全図解トヨタ生産工場〔生産管理・品質管理〕のしくみ

全図解トヨタ生産工場〔生産管理・品質管理〕のしくみ

運用改善の流れでトヨタ生産方式(TPS)の勉強を始めました。2011年の本ですがこの本は図が多くてイメージしやすく分かった気になれます。TPSは用語や考え方など独特の物がありますが、勉強する上で求められる前提的な部分をざっと見したり、あらためてイメージし直したりと何周分も役に立ってくれる便利な本です。

3. 入門 監視

入門 監視 ―モダンなモニタリングのためのデザインパターン

入門 監視 ―モダンなモニタリングのためのデザインパターン

付録Cネタで盛り上がった本ですが、もちろん本体もしっかり良い本です。監視を通して見ているシステムや現象、そのデータの扱い方など"監視"という言葉の周辺で起きることが網羅されています。より良質なアウトカムを得るための道しるべとなる本だと思います。

4. Safety‐2の実践

Safety‐2の実践―レジリエンスポテンシャルを強化する

Safety‐2の実践―レジリエンスポテンシャルを強化する

次はSafety-IIの本です。日本語版出てくれてありがてえありがてえという感謝しかありません。他の本で前提知識を得てからでないと難しい部分もありますが、レジリエンス"ポテンシャル"という中核をなす概念についてがっつり説明がなされている貴重かつ理解の支えとなる本だと思います。

5. 新しい東京 2020

新しい東京 2020 (ぴあ MOOK)

新しい東京 2020 (ぴあ MOOK)

  • 作者:
  • 出版社/メーカー: ぴあ
  • 発売日: 2019/05/30
  • メディア: ムック
最後はMookです。1990年代から2000年代前半に上京してきたぴあMap愛好世代にオススメしたい一冊です。ページデザインや説明の語りっぷりなど、あの頃のぴあMapが2020年の東京を案内してくれます。

こうして見ると考え方や概念寄りの本が多いですね。2019年の自分はあまり手を動かせていなかったこともあってツールに特化した本よりもこうした本の方が頭に残りやすい状態だったのかな。