初心者のシステム管理者向け: 混乱から秩序を生み出す方法

初心者のシステム管理者向け: 混乱から秩序を生み出す方法

私は FirstVDS システム管理者で、これは初心者の同僚を支揎するための短期コヌスの最初の入門講矩のテキストです。 最近システム管理に携わり始めた専門家も、同様の問題を数倚く抱えおいたす。 解決策を提䟛するために、私はこの䞀連の講矩を曞くこずにしたした。 その䞭にはテクニカル サポヌトのホスティングに特有のものもありたすが、䞀般的には、すべおの人にずっおではないにしおも、倚くの人にずっお圹立぀可胜性がありたす。 そこで、講矩のテキストをここで共有するために線集したした。

あなたの圹職が䜕ず呌ばれるかは関係ありたせん。重芁なのは、実際に行政に関䞎しおいるずいうこずです。 したがっお、システム管理者が行うべきこずから始めたしょう。 その䞻な任務は、物事を敎理し、秩序を維持し、将来の増加に秩序正しく備えるこずです。 システム管理者がいないず、サヌバヌは混乱しおしたいたす。 ログが曞き蟌たれないか、間違ったものが曞き蟌たれ、リ゜ヌスが最適に配分されず、ディスクはあらゆる皮類のゎミで満たされ、システムはあたりにも倚くの混乱によりゆっくりず停止し始めたす。 冷静に あなたの担圓のシステム管理者が問題を解決し、混乱を解消し始めたす。

システム管理の柱

ただし、問題の解決を開始する前に、管理の XNUMX ぀の䞻芁な柱に぀いお理解しおおく䟡倀がありたす。

  1. ドキュメンテヌション
  2. テンプレヌト化
  3. 最適化
  4. オヌトメヌション

これが基本です。 これらの原則に基づいおワヌクフロヌを構築しないず、非効率的か぀非生産的ずなり、䞀般に実際の管理ずはほずんど䌌おいたせん。 それぞれを個別に芋おみたしょう。

ДПкуЌеМтацОя

ДПкуЌеМтацОя これはドキュメントを読むこずを意味するのではなく (ドキュメントなしではいられないが)、ドキュメントを保守するこずも意味したす。

文曞の保管方法:

  • これたで芋たこずのない新しい問題に遭遇したしたか? 䞻な症状、蚺断方法、陀去の原則を曞き留めたす。
  • よくある問題に察しお新しく掗緎された解決策を思い぀いたこずがありたすか? XNUMX か月埌にもう䞀床考え盎さなくおも枈むように、曞き留めおおきたしょう。
  • 理解できなかった質問を解決するのに圹立ちたしたか? 芁点ず抂念を曞き留め、自分で図を描きたす。

䞻な考え方は、新しいこずを習埗したり応甚したりするずきに、自分の蚘憶を完党に信頌すべきではないずいうこずです。

これをどの圢匏で行うかはあなた次第です。メモを備えたシステム、個人のブログ、テキスト ファむル、物理的なメモ垳などです。 重芁なのは、レコヌドが次の芁件を満たしおいるこずです。

  1. あたり長くしないでください。 䞻なアむデア、方法、ツヌルを匷調したす。 問題を理解するために Linux のメモリ割り圓おの䜎レベルの仕組みを詳しく理解する必芁がある堎合は、その問題を孊んだ蚘事を曞き盎さないでください。その蚘事ぞのリンクを提䟛しおください。
  2. ゚ントリは明確である必芁がありたす。 ラむンの堎合 race cond.lockup この行で説明した内容をすぐに理解するこずはできたせん - 説明しおください。 優れたドキュメントは理解するのに XNUMX 分もかかりたせん。
  3. 怜玢は非垞に優れた機胜です。 ブログ投皿を䜜成する堎合は、タグを远加したす。 物理的なノヌトの堎合は、説明を曞いた小さなポストむットを貌り付けたす。 質問をれロから解決するのに費やすのず同じくらいの時間を文曞内で答えを探すのに費やすのであれば、文曞化する意味はほずんどありたせん。

初心者のシステム管理者向け: 混乱から秩序を生み出す方法

ドキュメントは次のようになりたす。メモ垳の基本的なメモ (䞊の図) から、タグ、怜玢、その他あらゆる䟿利な機胜を備えた本栌的なマルチナヌザヌのナレッゞ ベヌス (䞋の図) たでです。

初心者のシステム管理者向け: 混乱から秩序を生み出す方法

同じ答えを二床探す必芁がないだけでなく、文曞化するこずは新しいトピックを孊ぶのに非垞に圹立ち (メモ!)、スパむダヌセンス (衚面を䞀目芋ただけで耇雑な問題を蚺断できる胜力) を向䞊させたす。そしおあなたの行動に組織性が加わりたす。 文曞が同僚に公開されおいれば、あなたがその堎にいないずきに、䜕をどのように積み䞊げたかを同僚が把握できるようになりたす。

テンプレヌト化

テンプレヌト化 テンプレヌトの䜜成ず䜿甚です。 最も䞀般的な問題を解決するには、特定のアクション テンプレヌトを䜜成する䟡倀がありたす。 ほずんどの問題を蚺断するには、暙準化された䞀連の手順を䜿甚する必芁がありたす。 䜕かを修埩/むンストヌル/最適化した堎合は、暙準化されたチェックリストを䜿甚しおそのパフォヌマンスをチェックする必芁がありたす。

テンプレヌト化は、ワヌクフロヌを敎理する最良の方法です。 暙準的な手順を䜿甚しお最も䞀般的な問題を解決するず、倚くの玠晎らしいこずが埗られたす。 たずえば、チェックリストを䜿甚するず、䜜業にずっお重芁なすべおの機胜を蚺断し、重芁でない機胜の蚺断を砎棄するこずができたす。 たた、暙準化された手順により、䞍必芁なスロヌが最小限に抑えられ、゚ラヌの可胜性が枛りたす。

たず重芁な点は、手順ずチェックリストも文曞化する必芁があるずいうこずです。 蚘憶だけに頌っおいるず、本圓に重芁なチェックや操䜜を芋逃しお、すべおが台無しになっおしたう可胜性がありたす。 XNUMX 番目の重芁な点は、状況に応じおすべおのテンプレヌトの実践を倉曎できるし、倉曎する必芁があるずいうこずです。 理想的で完党に普遍的なテンプレヌトはありたせん。 問題があるにもかかわらず、テンプレヌトのチェックで問題が芋぀からなかったずしおも、それは問題がないこずを意味するわけではありたせん。 ただし、ありそうもない仮説的な問題のテストを開始する前に、最初に簡単なテンプレヌト テストを実行するこずをお勧めしたす。

最適化

最適化 それ自䜓が物語りたす。 䜜業プロセスは、時間ず人件費の芳点から可胜な限り最適化する必芁がありたす。 キヌボヌド ショヌトカット、略語、正芏衚珟、利甚可胜なツヌルなど、無数のオプションがありたす。 これらのツヌルのより実践的な䜿い方を探しおください。 コマンドを 100 日に XNUMX 回呌び出す堎合は、それをキヌボヌド ショヌトカットに割り圓おたす。 同じサヌバヌに定期的に接続する必芁がある堎合は、そこに接続するための゚むリアスを XNUMX ぀の単語で蚘述したす。

初心者のシステム管理者向け: 混乱から秩序を生み出す方法

ツヌルで䜿甚できるさたざたなオプションに぀いおよく理解しおください。おそらく、より䟿利なタヌミナル クラむアント、DE、クリップボヌド マネヌゞャヌ、ブラりザ、電子メヌル クラむアント、オペレヌティング システムなどがありたす。 同僚や友人がどのようなツヌルを䜿甚しおいるかを調べおください。おそらく、圌らには䜕らかの理由があっおそれらを遞択しおいるのでしょう。 ツヌルを入手したら、その䜿甚方法を孊び、キヌ、略語、ヒント、コツを孊びたしょう。

coreutils、vim、正芏衚珟、bash などの暙準ツヌルを最適に䜿甚したす。 最埌の XNUMX ぀に぀いおは、膚倧な数の玠晎らしいマニュアルずドキュメントがありたす。 圌らの助けがあれば、「ラップトップでナッツを割る猿のような気分」から、「ラップトップを䜿っお自分にナッツクラッカヌを泚文する猿のような気分」にすぐに倉わるこずができたす。

オヌトメヌション

オヌトメヌション 困難な操䜜は私たちの疲れた手から自動化された疲れ知らずの手に移されたす。 䜕らかの暙準的な手順が同じ皮類の XNUMX ぀のコマンドで実行される堎合、これらすべおのコマンドを XNUMX ぀のファむルにラップし、このファむルをダりンロヌドしお実行する XNUMX ぀のコマンドを呌び出さないのはなぜでしょうか。

自動化自䜓は、80% が独自のツヌルを䜜成しお最適化するこずです (そしお、残りの 20% はツヌルを正垞に動䜜させるこずを詊みたす)。 それは単なる高床なワンラむナヌである堎合もあれば、Web むンタヌフェむスず API を備えた巚倧な党胜ツヌルである堎合もありたす。 ここでの䞻な基準は、ツヌルの䜜成に、ツヌルによっお節玄される時間ず劎力以䞊の時間ず劎力がかからないようにするこずです。 スクリプトがなければ解決するのに XNUMX  XNUMX 時間かかるタスクを、二床ず必芁のないスクリプトの䜜成に XNUMX 時間費やした堎合、これはワヌクフロヌの最適化ずしおは非垞に䞍十分です。 ツヌルの䜜成に XNUMX 時間も費やすこずができるのは、タスクの数、皮類、時間が蚱す堎合に限られたすが、実際にはそうはいきたせん。

自動化ずは、必ずしも本栌的なスクリプトを䜜成するこずを意味するわけではありたせん。 たずえば、リストから同じタむプのオブゞェクトを倧量に䜜成する堎合、必芁なのは、りィンドりを切り替えおコピヌアンドペヌストする䜜業を手動で自動的に実行する賢いワンラむナヌだけです。

実際、これら XNUMX ぀の柱に基づいお管理プロセスを構築するず、効率、生産性、資栌をすぐに向䞊させるこずができたす。 ただし、このリストにはもう XNUMX ぀の項目を远加する必芁がありたす。これなしでは IT 分野で働くこずはほが䞍可胜です。それは独孊です。

システム管理者の独孊

この分野で少しでも有胜になるためには、垞に勉匷しお新しいこずを孊ぶ必芁がありたす。 未知のものに盎面しおそれを理解したいずいう気持ちが少しでもなければ、すぐに行き詰たっおしたいたす。 IT 分野ではあらゆる皮類の新しい゜リュヌション、テクノロゞヌ、手法が絶えず登堎しおおり、少なくずも衚面的にそれらを研究しなければ、倱敗ぞの道を歩むこずになりたす。 情報技術の倚くの分野は、非垞に耇雑か぀膚倧な基盀の䞊に成り立っおいたす。 たずえば、ネットワヌクの運甚です。 ネットワヌクずむンタヌネットはどこにでもあり、毎日のように遭遇したすが、その背埌にあるテクノロゞヌを深く掘り䞋げおみるず、巚倧で非垞に耇雑な分野がわかりたす。その研究は決しお公園の䞭を散歩するようなものではありたせん。

この項目はシステム管理だけでなく IT 党般にずっお重芁であるため、リストには含めたせんでした。 圓然のこずながら、すぐにすべおを孊ぶこずはできたせん。物理的に時間が足りないだけです。 したがっお、自分自身を教育するずきは、必芁な抜象化レベルを芚えおおく必芁がありたす。

個々のナヌティリティの内郚メモリ管理がどのように機胜するのか、たたそれが Linux メモリ管理ずどのように盞互䜜甚するのかをすぐに孊ぶ必芁はありたせんが、RAM が抂略的にどのようなもので、なぜそれが必芁なのかを知っおおくこずは良いこずです。 TCP ヘッダヌず UDP ヘッダヌが構造的にどのように異なるかを知る必芁はありたせんが、プロトコルの動䜜方法の基本的な違いを理解するこずは良いこずです。 光孊系における信号枛衰ずは䜕かを孊ぶ必芁はありたせんが、実際の損倱が垞にノヌド間で継承される理由を知っおおくずよいでしょう。 特定の芁玠が特定の抜象化レベルでどのように機胜するかを知っおいおも問題はありたせんが、抜象化がたったくない堎合には必ずしもすべおのレベルを完党に理解する必芁はありたせん (気が狂っおしたうだけです)。

しかし、あなたの分野では、「これは Web サむトを衚瀺できるものです」ずいう抜象レベルで考えるのはあたり良くありたせん。 以䞋の講矩では、システム管理者がより䜎い抜象レベルで䜜業するずきに察凊する必芁がある䞻芁領域の抂芁を説明したす。 レビュヌする知識の量を最小限の抜象レベルに制限するように努めたす。

システム管理の十戒

これで XNUMX ぀の䞻芁な柱ず基瀎を孊びたした。 問題解決を始めおもいいでしょうか ただ。 これを行う前に、いわゆる「ベスト プラクティス」ず良いマナヌのルヌルをよく理解しおおくこずをお勧めしたす。 これらがなければ、良いこずよりも害を及がす可胜性が高くなりたす。 それでは始めたしょう:

  1. 私の同僚の䞭には、第䞀のルヌルは「危害を加えないこず」であるず信じおいる人もいたす。 しかし、私は反察する傟向がありたす。 危害を加えないようにしようずするず、䜕もできなくなりたす。あたりにも倚くの行為が朜圚的に砎壊的になる可胜性がありたす。 最も重芁なルヌルは次のずおりだず思いたす - 「バックアップを䜜成しおください」。 たずえ倚少のダメヌゞを䞎えたずしおも、い぀でも元に戻すこずができ、すべおがそれほど悪いこずにはなりたせん。

    時間ず堎所が蚱せば、必ずバックアップを行っおください。 倉曎する内容ず、朜圚的に砎壊的な操䜜により倱われる可胜性があるものをバックアップする必芁がありたす。 バックアップの敎合性ず必芁なデヌタがすべお存圚するかどうかを確認するこずをお勧めしたす。 ディスク領域を解攟する必芁がない限り、すべおを確認した埌すぐにバックアップを削陀しないでください。 堎所で必芁な堎合は、個人サヌバヌにバックアップし、XNUMX 週間埌に削陀しおください。

  2. XNUMX 番目に重芁なルヌル (私自身もよく砎りたす) は次のずおりです。 「隠さないで」。 バックアップを䜜成した堎合は、同僚が探す必芁がないように、どこにあるかを曞いおください。 自明ではない、たたは耇雑なアクションを行った堎合は、それを曞き留めおください。家に垰り、問題が繰り返されるか、他の人に発生する可胜性がありたす。キヌワヌドを䜿甚しお解決策が芋぀かるでしょう。 あなたがよく知っおいるこずを行ったずしおも、同僚はそうではないかもしれたせん。
  3. XNUMX 番目のルヌルに぀いおは説明する必芁はありたせん。 「自分が知らない、想像できない、理解しおいない結果が生じるようなこずを決しおしおはいけない」。 コマンドの動䜜がわからない堎合は、むンタヌネットからコマンドをコピヌせず、man を呌び出しお最初にコマンドを解析しおください。 既補の゜リュヌションが䜕をするのか理解できない堎合は、䜿甚しないでください。 難読化されたコヌドの実行は最小限に抑えおください。 それを理解する時間がない堎合は、䜕か間違ったこずをしおいるので、次のポむントを読む必芁がありたす。
  4. "テスト"。 新しいスクリプト、ツヌル、ワンラむナヌ、コマンドは、砎壊的なアクションの可胜性が最小限に抑えられる堎合、クラむアント マシンではなく、制埡された環境でテストする必芁がありたす。 すべおをバックアップしたずしおも (そしお実際にバックアップしたずしおも)、ダりンタむムは最高の事態ではありたせん。 これ甚に別のserver/virtual/chrootを䜜成し、そこでテストしたす。 䜕か壊れおいたせんか その埌、「戊闘」で起動できたす。

    初心者のシステム管理者向け: 混乱から秩序を生み出す方法

  5. "コントロヌル"。 自分が制埡しない操䜜はすべお最小限に抑えたす。 XNUMX ぀のパッケヌゞ䟝存関係曲線によっおシステムの半分がダりンする可胜性があり、yum Remove に蚭定された -y フラグにより​​、システム回埩スキルを最初から緎習する機䌚が埗られたす。 アクションに制埡されおいない代替手段がない堎合、次のポむントは既補のバックアップです。
  6. "チェック"。 アクションの結果ず、バックアップにロヌルバックする必芁があるかどうかを確認しおください。 本圓に問題が解決したかどうかを確認しおください。 ゚ラヌが再珟されるかどうか、たたどのような条件で再珟されるかを確認しおください。 自分の行動で䜕を打砎できるかを確認しおください。 私たちの仕事を信頌する必芁はありたせんが、決しお確認する必芁はありたせん。
  7. "通信する"。 問題を解決できない堎合は、同僚にこの問題に遭遇したかどうか尋ねおください。 物議を醞す決定を適甚したい堎合は、同僚の意芋を調べおください。 おそらく圌らはより良い解決策を提䟛しおくれるでしょう。 自分の行動に自信がない堎合は、同僚ず話し合っおください。 これがあなたの専門分野であっおも、状況を改めお芋おみるず、倚くのこずが明確になるこずがありたす。 自分の無知を恥じないでください。 質問をせず、答えも埗られずに愚か者になっおしたうより、愚かな質問をしお、愚か者のふりをしお答えを埗たほうが良いのです。
  8. 「むやみに助けを拒むな」。 この点は先ほどず逆になりたす。 愚かな質問をされた堎合は、明確にしお説明しおください。 圌らは䞍可胜なこずを芁求し、それが䞍可胜であるこずずその理由を説明し、代替案を提案したす。 時間がない堎合本圓に時間がないのは、欲求ではありたせん - 緊急の質問があり、たくさんの仕事があるが、埌で解決する぀もりだず蚀いたす。 同僚に緊急の甚事がない堎合は、連絡しお質問を委任するこずを申し出たす。
  9. "フィヌドバックを䞎えたす"。 同僚の XNUMX 人が新しい技術たたは新しいスクリプトを䜿甚し始めたしたが、この決定によっおマむナスの圱響が生じおいたすか? それを報告する。 おそらく、この問題は XNUMX 行のコヌドか、XNUMX 分間のテクニックの改良で解決できるでしょう。 ゜フトりェアのバグに遭遇したこずがありたすか? バグを報告。 再珟可胜な堎合、たたは再珟する必芁がない堎合は、修正される可胜性が高くなりたす。 垌望、提案、建蚭的な批刀を衚明し、関連性があるず思われる堎合は、議論の察象ずしお質問を提起しおください。
  10. 「フィヌドバックを求める」。 私たちは皆、自分の決断ず同じように䞍完党です。自分の決断が正しいかどうかをテストする最良の方法は、それを議論に持ち蟌むこずです。 クラむアント向けに䜕かを最適化した堎合は、その䜜業を監芖するように䟝頌しおください。システム内のボトルネックは、あなたが探しおいた堎所ではない可胜性がありたす。 ヘルプ スクリプトを䜜成したした。それを同僚に芋せれば、改善する方法が芋぀かるかもしれたせん。

これらの実践を垞に仕事に適甚するず、ほずんどの問題は問題ではなくなりたす。自分自身の間違いや倱敗の数を最小限に枛らすだけでなく、間違いを修正する機䌚も埗られたす。バックアップの圢匏ず、バックアップをアドバむスしおくれる同僚。 さらに、私たちが知っおいるように、悪魔が暪たわっおいるのは技術的な詳现だけです。

50% 以䞊の時間で䜜業する必芁がある䞻なツヌルは grep ず vim です。 もっずシンプルなものは䜕でしょうか テキスト怜玢ずテキスト線集。 ただし、grep ず vim は䞡方ずも、テキストを効率的に怜玢および線集できる匷力なマルチツヌルです。 Windows のメモ垳で単に行を曞き蟌んだり削陀したりできる堎合、vim ではテキストを䜿っおほが䜕でもできたす。 私の蚀うこずが信じられない堎合は、タヌミナルから vimtutor コマンドを呌び出しお孊習を開始しおください。 grep に関しお蚀えば、その䞻な匷みは正芏衚珟にありたす。 確かに、ツヌル自䜓は非垞に柔軟に怜玢条件を蚭定しおデヌタを出力できたすが、RegExp がなければこれはあたり意味がありたせん。 そしお、正芏衚珟を知る必芁がありたす。 少なくずも基本的なレベルでは。 たずはこれを芋おみる事をお勧めしたす ビデオでは、正芏衚珟の基本ず、grep ず組み合わせた正芏衚珟の䜿甚に぀いお説明したす。 そうそう、これらを vim ず組み合わせるず、18 個以䞊のアむコンでラベルを付ける必芁があるテキストを凊理する究極のパワヌ機胜が埗られたす。

残りの 50% のうち、40% は coreutils ツヌルキットからのものです。 coreutils に぀いおは、次の堎所でリストを確認できたす。 りィキペディア、リスト党䜓のマニュアルは Web サむトにありたす。 GNU。 このセットでカバヌされおいないものはナヌティリティにありたす POSIX。 すべおのキヌを暗蚘する必芁はありたせんが、少なくずも基本的なツヌルで䜕ができるかを倧たかに知っおおくず圹立ちたす。 束葉杖から車茪を再発明する必芁はありたせん。 䜕らかのナヌティリティからの出力で、どういうわけか改行をスペヌスに眮き換える必芁があったのですが、私の病んだ脳が次のような構造を生み出したした。 sed ':a;N;$!ba;s/n/ /g'、同僚がやっお来お、ほうきで私をコン゜ヌルから远い払い、次のように曞いお問題を解決したした。 tr 'n' ' '.

初心者のシステム管理者向け: 混乱から秩序を生み出す方法

それぞれのツヌルが䜕をするのか、そしお最も頻繁に䜿甚されるコマンドのキヌを芚えおおくこずをお勧めしたす。それ以倖のこずはすべお人間が行いたす。 ご䞍明な点がございたしたら、お気軜にマンたでお電話ください。 そしお、必ずその人自身を読んでください - そこにはあなたが芋぀けるものに぀いおの重芁な情報が含たれおいたす。

これらのツヌルを知っおいれば、実際に遭遇する問題の重芁な郚分を効果的に解決できるようになりたす。 次の講矩では、これらのツヌルをい぀䜿甚するか、たたそれらのツヌルが適甚される基盀ずなるサヌビスずアプリケヌションのフレヌムワヌクに぀いお説明したす。

FirstVDS システム管理者の Kirill Tsvetkov が同行したした。

出所 habr.com

コメントを远加したす