えいのうにっき

a-knowの日記です

「インフラエンジニアの教科書2」を読んだ

なんか前回のエントリと前後しちゃった感もあるんだけど、今月に入ってから「インフラエンジニアの教科書2」という本を読んでいて、今日それを読み終えた。

インフラエンジニアの教科書2 スキルアップに効く技術と知識

インフラエンジニアの教科書2 スキルアップに効く技術と知識

続きを読む

「障害発生時に即座に収集したいサーバの状態・14項目」を実際に収集してみた

僕はインフラエンジニアではないし、そうだったこともないのだけど、いま「インフラエンジニアの教科書2」という本を読んでいる。

インフラエンジニアの教科書2 スキルアップに効く技術と知識

インフラエンジニアの教科書2 スキルアップに効く技術と知識

Twitter かなにかでこの本の存在を知り、とりあえず買ってみたものの、しばらくの間積読状態になってしまっていた。...のだけど、最近になってようやくちまちまと読んでいる。関係ないけど、kindleで読めるのはほんとに便利だ。

f:id:a-know:20161120213000p:plain

この本の7章「障害対策と障害対応」で、『以下のような項目についてはサーバ障害時に即座に(20秒程度で!)収集できるべき』、とされていた。

  1. メモリの搭載量と使用量
  2. パーティションごとのディスクの使用率と空き容量
  3. CPUの種類とコア数
  4. ディスクのRAID構成
  5. CPU使用率
  6. ディスクアクセス率
  7. TCPコネクションの数
  8. 現在サーバにログインしているユーザ
  9. サーバが起動してからのえ経過時間
  10. (それが Web サーバの場合、)Webサーバには何が動いているか?
  11. (DBと連携しているWebサーバの場合、)何のDBサーバソフトウェアと接続しているか?
  12. メモリやハードディスクが故障していると仮定したときに、その証拠の調べ方
  13. サーバにはUSBメモリが接続されているか否か?
  14. ネットワーク機器とサーバのネットワークインタフェースは何Gbpsで接続されているか?

これら全ての項目の収集を20秒でやりきれる自信は僕にはさらさら無かったし、なによりこの本の中ではコマンドしか紹介されていなかったので、そのひとつひとつについて自分のサンドボックス的サーバに対しておもむろに実行してみた。これはそのまとめになる。

サンドボックス的サーバ」というのは、さくらのクラウドに立てているVMインスタンス。以下のようなかんじのもの。

$ cat /etc/system-release
CentOS Linux release 7.2.1511 (Core) 
$ uname -a
Linux sandbox 3.10.0-327.22.2.el7.x86_64 #1 SMP Thu Jun 23 17:05:11 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
続きを読む

エンジニア立ち居振舞い:論理的に考える

ひとでくんさんが作ってくれた お題「エンジニア立ち居振舞い」。ぼくはセールスエンジニア...、、あっ、エンジニアじゃんってことで考えてみた。

常に物事を論理的に考え、捉えるようにする

僕のいまの仕事のうちのひとつに、ユーザーさんからの技術的な問い合わせに対する受け答えをする「テクニカルサポート」というものがあって。

hatenacorp.jp

ご意見やご要望、動作不良など、日々さまざまなお問い合わせをいただくのだけど、特に「なぜかうまく動かない」といったお問い合わせは、僕の目から見ても「なぜうまく動かないのかわからない」ということも多くて。

特に、起きてる現象に対しての「ひと目見ただけでの時点での感想」は、ユーザーの方が抱くものと殆ど同じだったりする。

ただそこからがやはり大事だと思っていて、

  • 目の前で起こっている事象が起きる原因としては、どういったものが考えられるか。
    • 原因と思われるものがいくつか考えられる場合、そのひとつひとつについて「それが真の原因かどうか」を確かめるにはどうすればいいか?
  • そんなことはないはず、といった考えを裏付けるような証拠(ログとか)などを確認することはできるか。
  • その原因となる可能性を少しでも狭めるためにできることには、どういったことがあるか。
    • 再現検証をしてみて再現するかどうか?
      • 再現しない場合は、ユーザーさんと自分の環境の差異となる要素はなにか?を考えたりとか
  • ユーザーさんが見ている・知り得ている情報とこちらの情報の差を予め整理し、理解する。
  • よくわからん場合、
    • 「どういう場合だとこういう事象が起こると思われるか」という仮説を立ててみる
    • その周辺の事柄で、そもそも自分の理解が不足していると思われる場合はまずそこの理解を進めて足場を固めてみる

...といったことを、いかに落ち着いて、頭の中で考えられるか、かなーと。

あと地味にアレなのが、「論理的に求めようとするきもち」と「感情的に(何かを)押し通したくなるきもち」のせめぎ合いに毅然として立ち向かうということかな。「あ、それね。絶対xxが原因だわ俺知ってるわー」としてしまいたくなるところを、いかにグッと堪えられるかというか。

でもまぁこういうのって「第3者視点からの思いつき」みたいなのも大事だったりするので、自分一人でいつまでも悩むんじゃなくて、適当なところで他の人の意見も求めるっていうのが大事だと思います(ここまで書いてきたこと台無し感)。



follow us in feedly