builderscon tokyo 2019 に当日スタッフとして参加してきた。 #builderscon
builderscon tokyo 2019に当日スタッフとして参加してきた。
builderscon tokyo 2017は当日スタッフとして、builderscon tokyo 2018はコアスタッフとして参加して、今回で3回目のスタッフとしての参加となった。
全てを準備してきたコアスタッフの皆様、当日スタッフの皆様、お疲れ様でした。
今回も例年通りスタッフ業を通して体験したことや、極々個人的なことを忘れる前につらつらと書き下しておこうと思う。
続きを読む読了、Goならわかるシステムプログラミング: Linuxシグナル再訪 in Go
Goならわかるシステムプログラミングを読んだ。
「第12章 シグナルによるプロセス間の通信」の冒頭で大昔に書いたブログ記事が引用されていてぶったまげる*1と同時に、ちょうど良い機会なのでGoの素振りも兼ねつつシグナルを再訪してみる。
SIGSTOP
で停止したプロセスにSIGKILL
以外のシグナルを送ってもSIGCONT
を送るまでシグナルがキューイングされる
元記事では、シェルスクリプトで呼び出したsleep
コマンドをSIGSTOP
で止めてからSIGTERM
を送っても、SIGCONT
で再開するまで送ったSIGTERM
がキューイングされて、sleep
を即座に終了できないことを確認した。
ただ、当時は観測する以上の突っ込んだ議論ができなかったので、今回は特にシグナルのキューイングについて、もう少しだけ詳細に実装を見る。
*1:実際には会社の先輩に教えてもらってぶったまげてから1年以上経ってしまった...
builderscon tokyo 2018 にスタッフとして参加してきた。 #builderscon
去年のbuilderscon tokyo 2017は当日スタッフとして参加して、そのClosingでカンファレンスのコンセプト*1に共感して、
それでも結構悩んで色々考えた結果、コアスタッフとして参加することにしたのが去年の11月くらい。
カンファレンスの準備から関わったのが今回が初めてだったけど、そこからなんだかんだ色々やらせてもらって、builderscon tokyo 2018は2018/09/08の本編2日目をもってひとまず終了した。
関わったスタッフの皆様、本当にお疲れ様でした。
ここでは、忘れ去る前に、色々スタッフ業を通して体験したことや、極々個人的なことをつらつらと書き下しておこうと思う。
*1:"This is your opportunity to jump out of your comfort zone."
Nodeのマシンタイプをケチって覚えたdebugging kubernetes
GKE上に立ち上げている自前のkubernetesのClusterは、一番安いという理由だけでg1-small*1を使い続けていた。しかし、いざ複数のPodを追加したりし始めると、Nodeのリソース不足が原因で色々ハマったので、そこで覚えた細かいデバッグ手法を例のごとく逆引き辞書っぽくメモしていく。ついでにリソースとは無関係なkubernetesのネットワーク関連でハマったこともメモ。すでに使い込んでいる人にとって目新しいものはない気がする。
以下、例となっているPodのデプロイは、状況を再現しやすいという理由だけで手前味噌のprometheus実験レポジトリを元に行っているのでprometheusが云々と多少言っているが、基本的にPodの内容がなんであれ、リソースが足りなくなった場合に何が起こって、kubectl
で何を確かめれば良さそうか、という点を中心に書き下していく。
*1:値段を改めて調べて気が付いたが、preemptible VMsでGKE上にkubernetesのClusterを立ち上げることができるっぽい。しかもかなり節約になる。くっ...!!