インフラエンジニアに求められる最低限の知識って何なんだろう?
インターネット中探したけど、結局よく分からない。。
現役でインフラエンジニアをやっている方から聞いてみたい!
こんなお悩みを現役インフラエンジニアが解決します。
☑本記事の内容
・そもそもインフラとは?
・設計構築でやることとは?
・必要最低限覚えておいた方が良い知識3選
・必要最低限の知識を学習する方法2選
・必要最低限の知識を覚えてから現場に入ったときの所感
☑本記事の信頼性
・実際に運用監視~設計構築へ這い上がった経験有り
・構築については、フィールドエンジニアから常駐エンジニア迄経験有り
こんな感じで昔は運用監視をやっていまして、今は設計構築業務に取り組んでいます。
僕は、設計構築に這い上がるために運用監視時代に猛勉強しました。
(実際にLPICやCCNA、MCP等の資格を取得しています。)
しかし、「実際に現場で使用する知識」については構築作業をやる前まではわかりませんでした。
今回は、現役のインフラエンジニアが設計構築業務をやる際に必要になる知識を、
本記事を読んでいるあなただけに教えたいと思います。
では、本題に入っていきたいと思います。
そもそもインフラとは?
アプリケーションを乗せるための基盤です。
インフラというのは、ざっくりですがこちらの部分になります。
ユーザーの目に見えないというデメリットはありますが、このように範囲が広いです。
googleで例えるならば、こんな感じです。
googleのTOPページ
→アプリケーション
ユーザーから見えない部分
→インフラ
このように、主にユーザーから見えない部分がインフラになります。
そもそもインフラの設計構築とは?
企業のインフラを作る仕事
企業(お客様or自社)のインフラを作る仕事になります。
業務の流れ
①要件定義
お客様から要望を聞きだす。
②設計
お客様からの要望を元に設計書に落とし込む
③構築
マシンに設定を入れていく
④試験
構築したマシンが想定通りに動作するかテスト
⑤引き渡し
構築したインフラを使用するユーザーに引き渡し
基本的にSIerではフェーズごとに業務範囲が分かれています。
SIerでの業務範囲の例
◯要件定義
お客様か元請け企業
◯設計〜引き渡し
二次受け企業
自社開発企業等では、これらを全て内製でやっている場合もあります。
本記事では、こちらの「設計/構築/試験」の部分に必要な最低限の知識についてご紹介します。
範囲が広い
インフラと言っても、範囲が広いです。
具体例
・OS
・監視
・ミドルウェア
・仮想基盤
・ロードバランサー
・クラウド
・ネットワーク
・ストレージ
・データベース
このように様々な範囲があります。
実際にインフラエンジニアとして働いていて、覚えることがまだまだあると感じます。
必要最低限の覚えておいた方がいい知識3選
・プロトコル
・ネットワーク周りの知識
・コマンドプロンプトでのping/ipconfig
プロトコル
プロトコルの知識は必須です。
抑えた方がいいプロトコル
・ICMP
・NTP
・DNS
・FTP
・SSH
・Telnet
・SNMP
・HTTP
・HTTPS
・DHCP
こちらのプロトコルの詳細については後日解説します。
(紹介すると長くなってしまいます泣)
実際に仕事をしていて、どれもよく使用する知識のため覚えておいた方が良いです。
ネットワーク周りの知識
ネットワーク周りの知識も必須です。
抑えた方がいいネットワーク知識
・IPアドレスの割り振り方
・サブネットマスクの計算方法
・デフォルトゲートウェイ
・VLAN
・OSI参照モデル(特に物理層~ネットワーク層)
これはサーバーとネットワークのどちらも共通して使用する知識になります。
サーバーやネットワークの構築でもそうですが、この辺の知識を抑えておくとトラブルシューティングの際にも活きます!
コマンドプロンプトでのping/ipconfig
コマンドプロンプトでのping/ipconfigは絶対にできた方が良いです。
なぜなら、インフラエンジニアをやる上で使用しない現場はないからです。
(Macを主に使用する現場を経験したことがないですが、ターミナルで似たような確認はすると思われます。)
コマンドプロンプトの使い方の例を紹介します。
- ping
※「ping -t」を実行すると、ずっとpingを流し続けることが可能です。
- ipconfig
コマンドプロンプトでのping/ipconfigは、業務で当たり前のように使うため、実際に手を動かして覚えましょう!
必要最低限の知識を学習する方法2選
・CCNAの勉強をする
・自分でサーバー構築をやってみる
CCNAの勉強をする
CCNAを勉強するのが一番手っ取り早い方法です。
なぜなら、
- プロトコルの知識
- ネットワーク周りの知識
を体系的に勉強できるからです。
CCNAは、僕が取得した資格の中で一番業務に活きた資格になります。
上で紹介している知識以外にも学べる知識があります。
他にCCNAで学べる知識
・スイッチの設定・確認
・OSPF
・ルーター設定・確認
など
特に、スイッチの確認については、資格取得当初に実務でやっていたため、おかげでアラート対応が早くなりました。
このように、設計構築の一歩を踏み出すためにCCNAを勉強することは非常におすすめです。
自分でサーバー構築をやってみる
自分でサーバー構築をやってみるということも非常におすすめな勉強方法になります。
なぜなら、今回紹介した知識を一通り学ぶことができるからです。
構築するテーマの例を紹介します。
・監視環境構築(Zabbix/nagios/Cacti等)
・OpenStack構築
・クラスター構築(RHCS/MSFC)
・ファイルサーバー構築(Samba等)
・WEBサーバー構築(apache/nginx等)
この中の「Zabbix」については下記の記事でも紹介しています。
自宅のPCのスペックが低くてできないんです。。
そんなあなたは、AWSやAzure等のパブリッククラウドを使えばOKです。
「構築後にすぐに削除する」ということを忘れなければ、料金は缶ジュース1本分です。
自分でサーバー構築をやってみることは、業務にもダイレクトに活きますし、やっておいて損はないです。
必要最低限の知識を覚えてから現場に入った所感
・プロトコルの知識が活きた
・IPアドレス設定がスムーズにできた
プロトコルの知識が活きた
実際の構築現場に入った際に、プロトコルの知識が活きたと感じます。
実際に使用した知識
・NTP
・DNS
・HTTP/HTTPS
・SSH
・SNMP
・DHCP
先輩に「NTPってなんですか?」という質問をしなくても、前提知識があったのでなんとかなりました。
このプロトコルの知識があると設計構築業務にスムーズに入っていけます。
IPアドレス設定がスムーズにできた
ネットワークに関する前提知識があったため、IPアドレスの振り分けがスムーズにできました。
使用した知識
・IPアドレス
・サブネットマスク
・デフォルトゲートウェイ
・VLAN
そこで、よく念押しでこんなことを注意されていました。
IPアドレスは他の機器とバッティングしないように気を付けろよ!
もし、既存のシステムとIPアドレスがバッティングすると、システムが止まったりします。
この注意点を理解できたのもネットワークの前提知識があったおかげです。
ネットワーク系の前提知識には本当に助けられました!!
まとめ : 必要最低限の知識を構築業務に入る前に抑えましょう!
今回は、設計構築に必要な最低限の知識についてご紹介してきました。
設計構築未経験でも今回ご紹介した知識を前提で持っていると、実際の業務に入りやすいです。
座学でも勉強できますが、実際にクラウド(AzureやAWS等)で手を動かした方が覚えるスピードが早いです。
また、手を動かした方が業務に直結します。
あなたが「いち早く上流工程の仕事がしたい」のであれば、今回ご紹介した内容は絶対に抑えておきましょう!
今回は以上です。
よろしければ、Twitterのフォローよろしくお願いします!
監視オペレーターの実態や脱出方法、インフラエンジニアのキャリアハックについて呟いています。