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

ホームラボの構築:暗くなった後のシステム管理者

編集者注:この記事は、JamesBrigmanがRedHatAcceleratorプログラムのメンバーであったときに作成されました。

ここで、新しい10年の夜明け(または、2021年から数えることを好む場合は1年後)に、ほとんどすべての人がコンピューターを所有して使用します。特に、スマートフォンをコンピューターとして数える場合はそうです。 IT業界で雇用されているシステム管理者は、通常、少なくとも1つの個人用システムを持っています(そこからWebサーフィン、購入、オンラインバンキングへのアクセスなどを行います)。仮想システムであろうとベアメタルであろうと、他のパーソナルシステムがあります。 ハードウェア。完全に管理された安全なプライベート環境で、システム管理機能を実行します。

この状況が、多くのシステム管理者が自宅に過剰な量のハードウェアを持っている理由です。ノートパソコンのシンプルな仮想マシンから、サーバークラスのハードウェアでいっぱいのラックまたはハーフラックまで、あらゆるものが表示されます。

すでにホームラボを好みに合わせて作成している場合でも、独自のラボを構築することを検討している場合でも、ホームシステム管理ラボの詳細について説明します。初心者から上級者まで、誰もがこのマルチパート記事で役立つものを見つけてくれることを願っています。実際のハードウェアビルドについては、後続の投稿で文書化します。

ハードウェア

ハードウェアに関して考慮すべきことから始めましょう。

Intel vs. ARM

私たちは幸運で現代に生きています。 IT管​​理者は、ホームシステムを構築するために3つのCPUから選択できます。

IntelおよびAMD互換のComplexInstructionSet CPU(CISC)プロセッサは常に利用可能です。また、ARMプロセッサが広く使用され、受け入れられているため、自宅や職場でシステムを構築するための低電力、低コストのオプションもあります。

ARMプロセッサは、Raspberry Pi(RPi)や一部のArduinoボードなどのシステムに搭載されています。これらの物理的に小さいコンピューターは、マイクロコントローラーとして知られています。 これらは通常、単一の限定された機能を実行するために展開され、統合開発環境(IDE)のみをユーザーに提示するオペレーティングシステムを備えている場合があるためです。

マイクロコントローラーがシステム管理者にとって不可欠になるのは、システム管理者がオンボードの銅線イーサネットインターフェイスを介してこれらのシステムを企業またはエンジニアリングスイッチにネットワーク接続できる必要がある場合です。私の職場では、有線イーサネットポートを介してネットワークに接続するエンジニアリング機能に使用されているこれらの小さなシステムが数十あります。私のチームは、これらの小さな機械についてエンジニアリング部門から時々質問を受けます。私は個人的な興味を持っており、天気の測定や3Dプリンターやコンピューター数値制御(CNC)システムなどのデバイスの制御に使用しています。私の雇用主はそれらを製品のテストに広く使用しています。

何歳ですか? (32ビットと64ビット)

用語32ビット および64ビット CPUのデータパス幅とシステムバスのデータパス幅を参照してください。ビット単位のデータパス幅は、システムの機能を説明するための基盤です。 32ビットシステムは通常4GB以下のRAMに制限されており、古い32ビットシステムのディスク制限は数テラバイトである場合があります。

2020年には、簡単に購入できるラップトップおよびデスクトップPCは、通常、64ビットのIntel互換CPUを搭載しています。システムに純正のIntelプロセッサが搭載されている場合、通常はクラスが一覧表示されます。 Core i3、Core i5、Core i7、またはCorei9としてのプロセッサーのこれらの指定は、IntelXシリーズプロセッサに追加されます。 「Corei-something」という用語は、インテルが自社製品をブランド化およびランク付けするための方法です。 「コア」は業界用語ではなく、単にインテルによるブランディングの演習です。

Linuxで有名になった正当な主張の1つは、多くの場合、単一の目的または複数の小さなタスクのために、古い32ビットハードウェアを仕事に戻すことができるということです。私自身、32ビットの小さなセットトップを持っています。 ハードウェア上で実行する必要があり、仮想マシン上で実行するようにアップグレードされることのない単一目的のアプリケーションに引き続き使用するコンピューター。オペレーティングシステムが利用可能な場合でも、32ビットシステムは、単一機能、Webディスプレイ、または低電力の常時接続の要件に対して正常に機能します。

問題は、32ビットのIntel / AMDシステムでは、自宅でIT環境を再現するメリットが限られている可能性があることです。一部の企業ソフトウェアは32ビットシステムで実行できますが、32ビットシステムのvSphereESXiシステムで仮想マシンをホストすることはできません。ほとんどの種類のリッチデータソースは、32ビットシステムでは実行されなくなります。これには、ビデオ会議、Webベースのブラウザ、オンライン学習、Slackなどの高度なITチャットツールが含まれます。

もちろん、私は今あなたに嘘をついたところです。世界には、Slackの実行、ビデオの再生、オンライン学習のホスト、およびビデオ会議が可能な携帯電話がぎっしり詰まっています。 (私は実際にビデオ会議に携帯電話を好みます。)

ただし、ほとんどのシステム管理者は、ハイパーバイザーを使用して仮想マシンを管理し、1つ以上の仮想マシンを制御および管理できる必要があります。 vSphere ESXiのような最新のハイパーバイザーは、通常、64ビットシステムで実行されます。したがって、マイクロコントローラを除いて、64ビットハードウェアが新しい標準です。このアーキテクチャは、8 GBのRAM容量(および企業のIT環境では1 TBまでのRAMは珍しいことではありません)と、数テラバイトのディスク容量を提供します。 2020年のビッグデータ環境では、データセンターにペタバイトのディスク容量が見つかることは珍しくありません。これは、かつては実際には不可能と考えられていたストレージの量です。

最も重要なことは、ESXiやKVMなどのハイパーバイザーを実行するには、IntelVT-xまたはIntel-64拡張機能を備えたIntelプロセッサーが必要です。 AMDプロセッサの場合、AMD-VまたはAMD64拡張機能が必要です。したがって、私の基本的な推奨事項は、8GB以上のRAMと少なくとも1TBのディスク容量を備えた最新のIntel64ビットCPU上にホームシステム管理プラットフォームを構築することです。このセットアップは、ハイパーバイザーをホストし、複数の仮想マシンを実行するための合理的なシステムです。

チップセット、グラフィックス、およびネットワークインターフェイス

ハイパーバイザーを実行するには、ハードウェアの互換性について心配する必要があります。 VMwareは、ハードウェアとの互換性を確認するための洗練された公開Webサイトを提供しています。 vSphereとESXiは、ハイパーバイザープラットフォームの中で最も制限の厳しいものと長い間見なされてきましたが、KVMはCPUに対してより基本的な要件があり、チップセット、グラフィックス、およびネットワークインターフェイスに対してはそれほど厳しくありません。

注意事項

私はよく友人、家族、同僚に、家庭環境にはデータセンターよりもはるかに厳しいコンピューターハードウェアの要件があると話しました。人々はデータセンターに住んでいないため、ハードウェアに合わせて空調されています。家は、室温、静か、そして(できれば)効率的な電力使用を必要とする人々が住む場所です。したがって、家庭で使用するシステムは、小さくて静かで、熱をあまり発生せず、電力の使用量ができるだけ少ない場合、人間を幸せにします。

インターネットルーター会社は本当にこの公式を打ち破った。ほとんどのインターネットルーターは、ファンレス、サイレント、低電力です。この記事で説明するコンピュータービルドは、モンスターゲームシステムではなく、1つ以上の特定のシステム管理機能を実行するため、これらの標準に準拠することをお勧めします。

家庭環境におけるもう1つの大きな違いは、システムが最終的に電力を失う可能性があることです。自宅に無停電電源装置(UPS)または発電機がない場合、自宅のシステムは、損傷することなく、電力の問題や突然の電力損失に耐えられる必要があります。重大な停電が発生した後も、ホームシステムを正しく起動する必要があります。

ただし、停電後に回転するディスクドライブが故障することは珍しくありません。これは、プラッタの回転が停止すると、ドライブが公称動作温度よりも低くなるために発生します。これらの2つの変更により、十分なスティクションが生成されます。 停電後にドライブが回転して再起動するのを防ぐため。 (はい、スティクションは本当に重要です。)良いことは、ソリッドステートデータストレージデバイス(SSD)にモーターや回転するプラッターがないことです。彼らにとって、スティクションはではありません 事。 SSDは、低電力システムに使用するのに最適なデバイスです。ドライブの読み取りと書き込みの回数だけ、ソフトウェアメンテナンスを提供する必要があります。

したがって、クール(またはファンレス)で動作し、静かで小型の64ビットシステムを入手できれば、家族からの受け入れが大幅に増えるでしょう。また、システムの信頼性が高くなり、同じ部屋にいるのがはるかに簡単になります。これは、クールで静か、そして小型の実行を最大化する種類のPCへのリンクの例です。この製品は推奨事項ではなく、可能なことの単なる例です。

大きなケースと小さなケース

何十年もの間、大型のデスクサイドコンピュータケースがホームラボ、さらにはホームゲーム機を支配してきました。大量のRAM、多数のディスクドライブ、および複数のビデオカードを備えた大規模なフォームファクタのマザーボードを収容できる機能と、そのすべてのハードウェアを適切に冷却できる機能が望まれていました。現在、多くの仮想マシンを効率的に実行できるラップトップとファンレスPCがあります。使用する必要のあるレガシーハードドライブが多数ある場合は大きなケースを選びますが、ストレージを選択できる場合は、ホームラボを構築するための厳しい要件ではありません。

モニター、マウス、キーボード、およびコンソール

Linuxは、古いモニター、マウス、キーボードを歓迎しています。古い640x480モニター、Dvorakキーボード、または3ボタンマウスで使用できるドライバーを頼りにできます。ただし、これらのコンポーネントは安価ですが、新しいバージョンでは、関連性のある便利な機能が提供されます。

今日のモニターの解像度は1920x1080以上です。マウスには、より多くのボタンとスクロールホイール機能があります。キーボードはプログラム可能で、便利な新しいファンクションキーがあります。大きくて新しいモニター、キーボード、またはマウスは、コンピューターに即座に、目に見える、または触覚的なアップグレードを提供します。この事実は、これらのアイテムに少しのお金を費やすことを正当化し、めったに悪い考えではありません。さらに、システム管理者に低コストのホリデーギフトや誕生日プレゼントを贈ることができます。

ただし、家の周りに部品、モニター、キーボードがある場合、または古いハードウェアに無料でアクセスできる場合は、ぜひお試しください。パフォーマンスや容量の低下に我慢しなければならない場合もありますが、ボールを転がすには、自由に勝つことはできません。

ソフトウェア

それでは、ソフトウェアに関して何を考慮すべきかを見てみましょう。

ベアメタルとハイパーバイザーまたはVM

ベアメタルでソフトウェアを実行する場合と、ハイパーバイザーまたは仮想マシンでソフトウェアを実行する場合には、基本的な考慮事項があります。ベアメタルでソフトウェアを実行するということは、通常、ハードウェアとオペレーティングシステムだけを持っていることを意味します。つまり、ハードウェアとOSだけを使用してシステムの目的を達成することを意味します。レイヤーパラダイムを使用してこのセットアップを説明すると、次のようになります。

  • アプリケーション層
  • オペレーティングシステムレイヤー
  • ハードウェアレイヤー

したがって、この構成の実際の例は次のようになります。

  • アプリケーション層: 表計算ソフトウェア
  • オペレーティングシステムレイヤー: Raspbian OS
  • ハードウェアレイヤー: ラズベリーパイ

ベアメタルを実行するということは、メモリとディスクストレージが少なく、パフォーマンスの低い古いハードウェアを使用することを意味します。この設定は、特に高性能が必要ない場合は、特定のニーズを満たすのに問題なく機能する可能性があります。

仮想化はハイパーバイザーレイヤーを導入し、物理マシンを仮想マシンに抽象化します。同じRaspberryPiの例を使用する:

  • アプリケーション層: 表計算ソフトウェア
  • オペレーティングシステムレイヤー: Raspbian OS
  • 仮想レイヤー: 仮想マシン
  • 仮想化レイヤー: ハイパーバイザー
  • ハードウェアレイヤー: ハードウェア

この追加の複雑さのために、仮想マシンを実行するには、より多くのRAMとより高速なディスク速度(またはSSD)を備えたより高速な64ビットハードウェアが必要です。 32ビットシステムで最高のパフォーマンスを発揮する仮想マシンを実行できるのは素晴らしいことですが、ホームユーザーは通常、より多くのRAMとより多くのドライブを備えたより高スペックの64ビットシステムにジャンプします。

ラズベリーパイのDocker

Dockerとコンテナーは、仮想化モデルのほぼ逆です。コンテナを使用すると、ベアメタルでOSを実行できます。次に、コンテナ内にアプリケーション層をインストールして管理します。

DockerはRaspberryPiで実行できます。これにより、Dockerとコンテナーの概念に適した学習プラットフォームになります。この機能については、後の記事で説明します。これは、RPi上のDockerの優れたリファレンス記事です。

メディアサーバー、バックエンド、フロントエンド

多くのシステム管理者は、メディアサーバーまたはバックエンドメディア/ストリーミングサーバーのいずれかを構築します。この設定に友人、家族、ルームメイトを含めると、本番サーバーが作成されることに注意してください。 、sysadminホームラボではなく。

メディアサーバーは多くの場合バックエンドです フロントエンドが必要です 再生するためにビデオまたはオーディオをデコードします。最近では、高品質のハードウェアディスプレイとデコードチップが搭載されているため、フロントエンドとして35ドルのRaspberryPiプルデューティーを見つけることは珍しくありません。このセットアップは、ビデオタスクをオフロードすることにより、低クロック速度のARMCPUとうまくペアになります。

JBOD vs. RAID vs. Unraid

RAIDは常にハッシュ化および再ハッシュ化されるため、ここではすべてのRAIDレベルなどについては説明しません。代わりに、コストの高い順に3つのオプションをリストします。

  • JBOD: (最低コスト)このオプションは、1つのスピンドルまたは1つのUSBフラッシュメモリスティックで構成できます。
  • レイドなし: (中程度のコスト)このオプションは、ディスクの管理に役立つディスクハードウェア上のソフトウェアレイヤーです。
  • RAID: (最も高いコスト)Redundant Array of Independent Disks(RAID)(頭字語が綴られていなくても逃げられると思っていましたか?)は、複数のドライブに接続できるコントローラーが必要なため、通常、最も高価なオプションです。パリティドライブの必要性は、独自のデータを保存するために使用できないディスクスペースであり、1つのドライブに障害が発生して動作を継続できるようにするためのオーバーヘッドとして機能するため、コストが上昇します。

単一のスピンドルでサーバーの概念をテストすることは悪い考えではありません。より高いパフォーマンスや信頼性が必要な場合は、UNRAIDまたはRAIDを選択してください。

[RAIDの詳細をお探しですか? 「RAIDを回避する人のためのRAID」を確認してください。 ]

今後のサンプルビルド

後の記事で、次のビルドを見ていきます。

  • ARM
  • インテル
  • AMD
  • NFS/ディスク

可能な限り低いコスト(RPi)から始まり、RAIDハードウェアを実行する商用品質のシステムまでのビルドをデモンストレーションします。各ビルドの長所と短所について説明します。

締めくくる前に、はっきりさせておきたいのですが、低コストには、単にお金を節約するだけではないという利点があります。低コストとは、使い捨てで再構成可能であり、さらには「手放すことができる」ことも意味します。低コストから高コストへの移行を追跡し、低コストのハードウェアが他のオプションよりも家庭環境でどのように柔軟で強力であるかを示します。

参照

これがあなたを乗り越えるための参照です:

  • Unraidを使用すると、データとアプリケーションを完全に制御できます
  • Unraidが究極のホームNASソリューションである5つの理由
  • Serverbuilds.net
  • トムスハードウェア
  • VMwareハードウェア互換性ガイド

Linux
  1. 組み込みLinuxシステムを構築するための4つのツール

  2. LinuxでExt2/Ext3ファイルシステムをExt4に移行する方法

  3. Linuxシステム管理者になる:販売からシステム管理者まで

  1. 新しいLinuxスキルを学ぶためのホームラボを構築する方法

  2. Linuxラボ:SysAdmin 101

  3. 多くのパーティションを作成する理由

  1. Linuxのセキュリティ:fail2banでシステムを保護する

  2. Chrooted SFTP ユーザーの書き込み権限

  3. ユーザーの作成後にホームディレクトリを作成する