Linuxサーバーをどのように管理しますか?
最も可能性の高い答えは、SSH経由でサーバーにログインしてから、あらゆる種類のタスクにLinuxコマンドを使用することです。
それは私たちのほとんどのシステム管理者が行うことです。しかし、コマンドラインにあまり慣れていないにもかかわらず、Linuxサーバーを管理しなければならない人口もごくわずかです。
あなたがそれらの数少ない人々の一人であるならば、私はあなたに良い知らせがあります。 Linuxサーバーをグラフィカルに管理できるツールがいくつかあります。
WebminとCockpitは、このカテゴリで最も人気のあるツールです。
LinuxハンドブックでWebminについてはすでに説明しました。コックピットについてもっと学ぶ時が来ました。
Linux用のコックピットプロジェクトとは何ですか?
コックピットは、Linuxサーバー用のブラウザベースのグラフィカル管理ツールです。サーバーにコックピットをインストールすると、ブラウザーからサーバーにアクセスし、ファイアウォールの構成、ネットワーク設定の変更、ストレージの管理、ユーザーアカウントの管理、コンテナーの実行、更新のインストール、ソフトウェアの更新など、すべての通常の管理タスクを実行できます。 CPU負荷、メモリ使用量、ネットワークアクティビティ、ディスクパフォーマンスを分析することもできます
Linuxに少し慣れている場合は、サーバーをグラフィカルに管理するためのコックピットが適しています。経験豊富なシステム管理者であっても、コックピットを使用すると、サーバーの概要を把握できます。
最近、Ansibleのような最新のユーティリティが好まれていることは知っていますが、コックピットは依然としてさまざまなユーザーにとって良い選択です。
Cockpitを使用してLinuxサーバーをリモートでグラフィカルに管理する
コックピットのウォークスルーを紹介し、コックピットで何ができるかを示します。
監視するサーバーにコックピットをインストールする必要があります。はい、1つのコックピットインターフェースから複数のサーバーを監視できます。複数のサーバーの手順については後で説明します。
このクイックチュートリアルでは、Ubuntu18.04サーバーにコックピットをインストールします。
sudo apt -y install cockpit
その後、ポート番号9090を使用してインターフェイスにアクセスできるようになります。
サーバーに物理的にアクセスできる場合は、次のようにWebブラウザでローカルホストを使用できます。
localhost:9090
サーバーのファイアウォールでポート9090が許可されていることを確認してください。 サーバーのIPアドレスとポート番号を使用してコックピットインターフェイスにアクセスできます。たとえば、IPアドレスが1.2.3.4の場合、アクセスURLは次のようになります。
1.2.3.4:9090
Webブラウザのカスタムhttpsアクセスを許可する必要があることに注意してください。

その後、次のようなインターフェースが表示されます。

ここで必要なユーザー名とパスワードは、サーバーに使用するものと同じクレデンシャルであることに注意してください 。
また、「特権タスクにパスワードを再利用する」ことを確認してください。 「」がチェックされています。ログイン後に管理タスクを実行する必要があります。
最初のログイン時に、ローカルホスト設定の下のシステム概要ページに移動します:

ログセクションでは、次の重大度に基づいてログメッセージをフィルタリングできます。
- すべて
- 緊急時のみ
- アラート以上
- クリティカル以上
- エラー以上
- 警告以上
- 通知以上
- 情報以上
- デバッグ以上
デフォルトでは、「エラー以上」ベースの重大度ログが表示されます。特定の期間に基づいてメッセージをフィルタリングすることもできます:
- 最近
- 現在
- 過去24時間
- 過去7日間

ストレージでは、すべてのストレージ統計の簡潔な概要を取得でき、それらは次のように分類されます。
- ファイルシステム
- NFSマウント
- ストレージログ
- RAIDデバイス
- ドライブ
- その他のデバイス

個別のログセクションがある場合でも、ストレージ専用の専用ログセクションがあると便利です。
ここでは、ネットワークインターフェイスに関連するすべての情報を表示できます:
- インターフェース
- ネットワーキングログ

ネットワークログは、ストレージログと同様に、ネットワーク統計のみに関連するすべてのメッセージを登録します。
このセクションには、対応するLinuxサーバーに登録されているすべてのシステムユーザーが表示されます。このインターフェースを介してユーザーを作成または削除できます。

サーバーのすべてのシステムサービスは、有効として分類されます 、無効 および静的 。以下に基づいてフィルタリングできます:
- ターゲット
- システムサービス
- ソケット
- タイマー
- パス

ターミナル(そうです!)
これは、ここでコマンドを実行したり、オタクを探したりできるという理由だけでなく、私のお気に入りです。重要だが時間のかかるコマンドを実行する必要がある場合、Webインターフェイスを使用していると、端末にすべてを入力するのが非常に面倒になる可能性があります。私はこれをLinodeで利用可能なWebベースのコンソール、つまりWeblishとGlishで経験しました。そこにコマンドをコピーして貼り付けることはできません。しかし、コックピットでは間違いなくできます!

リアルタイムの統計情報を使用してさらに簡単な概要が必要な場合は、ダッシュボードにアクセスしてください。 代わりは。

統計は、CPU、メモリ、ネットワーク、ディスクI/Oの4つの重要なタブに分類されます。




SSHキーの追加
右上隅で、ユーザー名をクリックしてから[認証]をクリックします。

SSHキーがデフォルトの場所にある場合は、自動的に検出されます。それ以外の場合は、手動で追加して有効にする必要があります。これは、端末を介して使用するのと同じSSH構成です。 SSHにローカルでパスフレーズを使用している場合は、下に表示されているボタンをクリックした後にパスフレーズを入力する必要があります。

このシンプルなダッシュボードから、単一のインターフェイスから監視するサーバーをさらに追加できます。ただし、それを確実にするには、次の前提条件を確認する必要があります。
- [特権タスクにパスワードを再利用する]をオンにしてログインしました。
- コックピットは、サーバーを追加する前にすべてのサーバーにインストールされます。
- SSHキー(ここでは標準と見なされます)が事前に追加され、有効になっています

マシンを追加するには、上記の9090の代わりに、リモートサーバーで使用しているものと同じSSHポート番号を使用する必要があります。デフォルトでは22です。

[追加]をクリックすると、次のようなエラーが発生する場合があります:

これは、コックピットがリモートサーバーで現在のシステムと同じクレデンシャルを使用しようとしているためです。同じエラーページ(上の画像を参照)で、ユーザー名をリモートサーバーで認識されるものに変更できます。
これを実行して[ログイン]をクリックすると、リモートサーバーが追加されます。

すでに追加されているサーバーを削除するには、[サーバーの編集]アイコンをクリックする必要があります:

クリックすると、赤でマークされた追加サーバーを削除できます。もう1つは、現在接続しているサーバーを削除できないため、グレー表示されています。

削除されたサーバーは、このコックピットのダッシュボードから削除されることに注意してください。コックピットはまだそのサーバーにインストールされているため、サーバーのIPアドレスのポート9090で使用できます。サーバーのコックピットプログラムをアンインストールする必要があります。
私は、そのユーザーインターフェイスがこれほど単純であると同時に、サーバー監視ソフトウェアのような機知に富んだものであるとは思っていませんでした。その非常に直感的なダッシュボードとインターフェースの統計を調べた途端、私はそれに夢中になりました!
CockpitをDockerコンテナーとしてインストールすることについての考えが私の頭に浮かんだわけではありません。しかし、そのデザインはそのためには理想的ではありません。このGitHubリンクからの次の引用は、それを非常に明確にしています:
「コックピットの設計方法では、シングルタスクのDockerアプリケーションコンテナではなく、フルマシンで実行する必要があります。」
ただし、それでも実験したい場合は、この非公式のDockerイメージを確認してください。また、最初に必要なdockercompose構成も含まれています。
コマンドラインに抵抗がある人にとって、コックピットは非常に便利なツールです。また、経験豊富なシステム管理者が1つのダッシュボードで複数のLinuxサーバーの概要を把握するのにも便利です。
経験豊富なコックピット管理者である場合は、貴重なフィードバックをお寄せください。