インフラエンジニアは何をやっているのか #4ヶ月目
2月もあっという間に過ぎてしまいました.まだ寒いですね🥶
今月ももう終わりなので,毎月恒例のシリーズを更新していきたいと思います.
4ヶ月目の活動(業務内容)
今月は少しおとなしめだったかもしれません.
稼働しているサーバへのディスク拡張
日々いろいろな監視のトリガーに引っ掛かり,アラートが鳴っています(良くはないとは思います).今月は何台かのサーバのディスク容量がカツカツになってしまったので,その対応としてディスクを拡張しました.
クラウド環境はわかりませんが,自分の会社はオンプレミスなので,ディスクの追加と諸々のOS側での操作が必要になります.VMware製品を使って仮想化はしているので,HDDを追加するにしても,ホットプラグが可能なのでサービス停止がない点はいいと思います.
先人たちの過去の作業手順書があったのでこれらを参考に今回の作業手順書をつくるところから始めたのですが,自分が思っていたよりもディスクの拡張にはいろいろな用語が出てきて勉強になりました.パーティションや物理・論理ボリュームの概念の違いが最初はほとんど理解できなくて苦戦しました😫 そもそもサーバが仮想化されているので,物理と仮想の区別が難しいです笑
Ansibleで監視設定を一括変更
先月やっていたAnsibleでいろいろする件の本題をようやく実施しました.
zabbix-agent2を使っているサーバにのみ特定の設定を追記してagentを再起動する必要があったのですが,
1. サーバにログインする
2. zabbix-agent2が入っていることを確認
3. 該当の設定が.confファイルにあるかを確認
4. 設定を追記
5. agentを再起動
をサーバ全台で行う必要がありました.
先月は2.まで自動化できることを確認しましたが,本題であるそれ以降ができていなかったので3.から再開しました.
すでに設定の記述があるサーバには4.をする必要がないので,その分岐として3.を用意したのですが,Ansibleは結構賢いので,4.のような操作をする場合,既にその記述が存在する場合は何もしないようになっているようです.
今回のような簡単な記述なら問題なさそうなのですが,正規表現を用いて設定の書き換えを行おうとした場合や,Ansibleの組み込みモジュールではないshellなどの方法を使った場合は,冪等性が成立しないことがあるみたいなので,事前のテストは重要ですね.
一通りタスクを書き終えて,手始めに開発環境の数台のサーバで実行したところ,うまくいきそうだったので開発環境全てのサーバで実施しました.も難題なさそうだったので検証環境のサーバでも実施し無事成功しました.
このまま商用環境で一気にやっても良かったのですが,万が一のことを考慮して1.~3.までを行えるタスクを別に用意して,本当に操作が必要なサーバのみをリストアップし,そのリストを参照して4.5.を実施するようにしました.Ansibleはデプロイツールのようなトランザクションの機能はないはずなので一応保険をかけました.商用環境のサーバでもタスクは無事実行され,zabbixダッシュボード側で値取得不可のアイテム数がどんどん減っていくことが確認できました.
Ansibleとは直接関係ないのですが,タスクの実行結果をリダイレクトしたファイルや,サーバリストのテキストの整形でかなりvimとシェルの練習ができたと思います.ファイルから過不足なく必要な情報のみを抽出して標準出力に出力できたときの嬉しさはいいですよね😋
完全に余談ですが,vimの置換コマンドを調べていたら偶然知ったのですが,grepコマンドの名前の由来が意外でした.
データセンター内作業
昨今の半導体不足などの煽りを受けて遅れていたストレージサーバがついに届いたのでデータセンターに設置しに行きました.
今までも何度かデータセンターには行きましたが,やはり人間のための空間ではなくサーバのための空間なので,空気は乾燥しているし,ラックの裏側は冬でも汗をかくくらい暑いです...
ラックにレールを立て付けてサーバを入れるだけの簡単な作業のように思いますが,実際はラックにたくさんのサーバやケーブルがささっているので,何かの手違いでケーブルを引き抜いたりサーバを壊したりでもしたら大ごとなので,思った以上に重労働です.特に大変だったのは,ラックの床下を経由して電源ケーブルを裏側から表側に持ってくる作業でした.
聞いた話によると,データセンターで実際にラッキングや配線を行う場合はそれ専門の業者が行うらしいですが,自分の会社のインフラチームでは,一部の特殊な作業以外は全て自前で作業をしています.自分にとってはこれが普通だと思っていたので驚きです笑
そして思わぬ死...
本当に偶然なのですが,データセンターに行ってストレージサーバを無事設置し,データセンターの休憩所でコーヒーを飲んでいたら,スマホに入っているslackから大量のアラート通知が届きました.急いで自社のサーバルームに向かったところ,全く別の関係ないサーバがお亡くなりになっていました.そのサーバをラックから外して本社に持ち帰り.リカバリ可能なデータを本社にあった別のサーバに移行し,後日改めてデータセンターに行ってサーバを転生させました.機器の故障やリプレイスはクラウド環境では体験できないイベント(?)なので駆け出しエンジニアの身としては貴重な体験だったと思います.
セミナー参加やベンダーとの打ち合わせに参加
今月は社外の人とのやりとりも何度かありました.
ネットワーク機器に関するハンズオンセミナーに参加したり,セキュリティ関連のツールを扱っている企業によるセミナーにも参加しました.
また,今後購入する予定のネットワーク機器に関する打ち合わせに参加しました.正直半分以上は細かい仕様の話で理解できませんでしたが,その業界の最新の動向については知ることができて良かったと思います.
今回はスイッチ機器に関するベンダーとの打ち合わせでした.企業向けのスイッチはどれもポート数が多すぎるんじゃないかと当時まで思っていたのですが,冗長化のことを考えると思った以上に簡単にポート数が埋まることが
わかりました.
4ヶ月目の活動(その他)
小さいものがとても多いので概要だけ書きたいと思います.
raspberry pi購入断念
先月ラズパイを買ってネットワーク構築を勉強しようかなと思っていたのですが,昨今の半導体不足を正直ナメていました.正規ルートでは当面の間手に入らないことがわかり,メルカリやヤフオクでも調べたのですが,考えることはみんな同じなので,中高品でも定価の1.5倍以上するので一旦諦めます😢
Linuxの勉強をそろそろ...
資格を取るかどうかは置いておいて,もう少しLinux周りの勉強がしたかったのでLpic(今はLinux?)の本を買いました.この機会にLinux用のPCを買ってみるのもいいかなと思っているので,今探しているところです.とりあえず今はVirtualBox内でUbuntuを動かしているのですが,英字配列のMacのキーボードと絶妙に相性が悪いので早くなんとかしたいです.
小さな疑問を調べる
今に始まった事ではないし,noteに書くほどではない内容が多数ですが,日々の仕事でふと気になったことを調べることをよくやっています.最近だと,dockerを商用利用する場合に,ネットワークの管理はどうしているのかが気になって調べていました.技術的なアウトプットになるほどではないものの,日々の仕事でふと気になったことを調べているだけで結構時間が溶けています.
おわりに
「2月にやったことをあまり覚えていないな...」と思っていましたが,書いてみると結構いろいろやっていました.来月はもう少し勉強っぽい勉強をしたいです.