GNU/Linux >> Linux の 問題 >  >> Linux

システム管理者と運用者のための秘訣と扱い

ブー!いよいよハロウィンがやってきました。お気に入りのハロウィンコスチュームはもう用意しましたか?または、子供がトリックオアトリートの準備をしている可能性があります。 2020年であり、このコロナウイルスの大流行は恐らく最も恐ろしいことです。幽霊やゾンビがドアをノックするよりもさらに恐ろしいことです。

あなたがシステム管理者であるとき、あなたはグースバンプと眠れない夜を与えるいくつかの本当に恐ろしい瞬間に遭遇するかもしれません、しかしそれがコプト十字、ニンニクネックレスであるかどうかにかかわらず、最も恐ろしい幽霊、ゾンビ、またはモンスターでさえ逃げる敵があります、クリプトナイトの塊、または専門のシステム管理者。この記事では、あなたのようなシステム管理者にとって恐ろしい瞬間をいくつか紹介します。また、それらをどのように処理できるかについても説明します。結局のところ、ハロウィーンなので、このリストを私のハロウィーンのおやつと考えてください。

このブログもYouTubeで提供しています。もっと読むのではなく、見てみたいと思います。

秘訣#1:クラウドサーバーのクラッシュ

午前2時、スマホがブーンという音を立て始めます。半ば目が覚めたら、スマートフォンを手に取り、画面を見つめます。シュート。電子メールは、Slack / Teamsメッセージシステムから、本番サーバーが2〜3時間ダウンしているという自動生成された通知を受け取り続けます。次に知っていることは、上司はあなたと残りの運用チームができるだけ早くそこにいることを望んでいるということです。これは間違いなくあなたが入りたくない状況です、それでどうやってそれが起こらないようにすることができますか?

[次のこともお勧めします:Bash bangコマンド:Linuxコマンドラインの必知のトリック]

治療#1:ロードバランサーとレプリケーション:サーバーのクラッシュの防止

実行中のサーバーのクラッシュを完全に防ぐことは不可能ですが、適切な方法で設計すれば、ほぼフォールトトレラントなシステムを作成することができます。 1つの解決策は、マルチクラスターとマルチノードを使用して複数の環境にレプリケーションを設定することです。ロードバランサーを追加して、1つのクラスターがシャットダウンした場合でも、他のクラスターが引き続き動作するようにすることができます。トラフィックやその他のパフォーマンスの問題が多すぎる場合は、自動スケール機能を構成してスケールアップまたはスケールオーバーできます。

秘訣#2:データの破損または損失

マイクという名前の新しいインターンがエンジニアリングチームに加わりました。彼は必要なツールを手に入れたことに興奮し、何も害することを意図せずにSQLクエリを実行します。しかし、ええと、ああ。この小さな変更により、データベーステーブルが削除され、重要な顧客データがすべて削除されます。このような問題の発生を防ぐために何ができますか?

治療#2:データのバックアップと復元:データの損失と破損を修正

データの損失は、ライブサービスやアプリケーションにとって深刻な問題です。したがって、バックアップと復元の戦略は、少なくとも実稼働環境では常に利用可能である必要があります。理想的には、バックアップと復元の手順がすべての環境で利用可能である必要があります。また、このプロセスを自動化するメカニズムを作成します。開始する最も簡単な方法は、一連のバックアップおよび復元コマンドを実行するためのbashスクリプトを作成することです。

トリック#3:アプリケーションのクラッシュ

やったー!サーバーとデータベースはフォールトトレラントで堅牢ですが、ビジネス向けの重要なエンドポイントを公開している1つのJavaアプリケーションが突然爆発します。顧客がWebサイトにアクセスすると、404ページしか表示されません。これは、会社に1分あたり100万ドルの費用がかかります。

治療#3:可観測性-ロギングとモニタリング:エラーやバグをすばやく特定する

アプリケーションエラーは常に発生し、問題を処理するためのサーキットブレーカーパターンなどの多くの手法とプログラミングデザインパターンがあります。ただし、アプリ内で実行されているエラーは、修正する前にすばやく特定する必要があります。したがって、ロギングとモニタリングはすべてのアプリケーションにとって絶対に必要なものです。アプリケーションで、コードブロックと行全体でデバッグポイントが有効になっていることを確認してください。開発者が問題をすばやく特定できるように、これらのエラーまたは出力を監視ダッシュボードに送信する必要があります。

トリック#4:遅いアプリケーション

すべてのアプリケーションのロギングとモニタリングを追加しました。今年のバーチャルハロウィンコスチュームコンテストで優勝する方法を夢見て、ようやく幸せに眠ることができます。しかし、数分後、アプリケーションサービスが本当に遅いと感じているという顧客からのメールを読みました。

治療#4:ボトルネック識別開発ツール:速度低下が発生する場所を発見する

開発者がアプリケーション全体で監視とロギングを有効にしてボトルネックをすばやく特定できるように、tracerouteなどの開発者ツールを使用できます。 / tracert 、Chromeブラウザ開発ツール、およびWiresharkを使用して、アプリケーションのトラブルシューティングを行い、パフォーマンスの問題が発生する場所を簡単に特定します。このようなツールを知っていると、開発者はクラウドベースのアプリケーションに関連する困難な問題を解決するのに役立ちます。

トリック#5:1つの場所でのみ遅いレイテンシが報告されました

あなたはマスターシステム管理者なので、最終的にアプリケーション全体の速度低下の原因を見つけました。あなたは問題を修正しました、そして顧客は後であなたにすべてが良いことを述べているお礼状を送ります。しかし、1日後、オーストラリアのシドニーにいる別の顧客から、サイトにアクセスしたときに会社のアプリケーションが遅く感じられるというメールが届きました。何が起こっているのですか?

治療#5:コンテンツ配信ネットワーク(CDN)とマルチリージョンアクセス:遅延を減らす

アプリケーションの設計により、問題は依然として遅延の問題である可能性がありますが、問題は、その都市または地域の顧客がサーバーを利用できないことにある可能性があります。この問題を解決する1つの方法は、実行中のサービスの場所を追加して、必要なコンテンツを顧客に配信するために最も近いサーバーを自動的に選択できるようにすることです。つまり、マルチリージョンクラスターとコンテンツ配信ネットワーク(CDN)は、問題の軽減に役立ちます。

[今すぐダウンロード:Bashスクリプトのシステム管理者ガイド。 ]

まとめ

それはすべての人々です!サーバーまたはクラウド環境でアプリケーションを実行しているときに、システム管理者として遭遇する可能性のある5つの最も一般的な問題点を解決する方法を学びました。このような問題は常に発生しますが、適切なアーキテクチャと優れたシステム管理者アプローチを使用して、問題を適切に防止または軽減する方法があります。この記事があなたがより良いシステム管理者になるのに役立つことを願っています。ハッピーハロウィン!


Linux
  1. curlとwgetのヒントとコツ

  2. Pythonアプリケーションの作成、Linuxラボの構築、およびシステム管理者向けのその他のヒント

  3. データの視覚化と分析のためのコマンド ライン ツールはありますか?

  1. Linuxでの印刷にCUPSを使用するためのヒントとコツ

  2. Linuxシステム管理者向けのWebアプリケーションファイアウォールの概要

  3. Linuxコマンドを知っている必要があり、WindowsでPodmanを実行し、システム管理者向けのその他のヒント

  1. 36秒でラボを構築し、MacでPodmanを実行し、システム管理者向けのその他のヒント

  2. 上位の1行のLinuxコマンド、VMイメージのカスタマイズ、およびシステム管理者向けのその他のヒント

  3. Ddはいつデータのコピーに適していますか? (または、Read()とWrite()が部分的である場合)?