オープンソース

Cockpit〜Linuxサーバ管理のOSS〜

Cockpit(コックピット)とは、Linuxシステムのサーバ管理用WEBインタフェースです。サーバ管理では、正常にサービスが運用されているかチェックするために、各システムの負荷やアクセス量などのデータを監視することが大切です。Cockpitを利用することで、システムの状態の確認や分析、アカウント作成などの作業を、WEBインタフェースから行うことができLinuxシステムの管理や運用の仕事が楽になります。ここでは、サーバ管理ツールであるCockpitの特徴や採用するメリット、Cockpitの役立つ機能について紹介します。

サーバ管理時のX windowシステムの課題

従来の多くのディストリビューションは、システムの管理をGUIで行うためには、X windowシステムを使い、管理用の専用ソフトウェアを立ち上げる必要がありました。この方法でも管理はできますが、いくつか問題のポイントがありました。

  • インストールが手間

    X windowシステムは、GUIを動かすために多くのライブラリやソフトウェアをサーバにインストールする必要があります。サーバにGUIを複数インストールするとソフトが増えてしまうということは、セキュリティパッチを適用する回数が増えてしまいます。そのため管理用サービスのアップデートのためにシステムの停止が必要になります。

  • 脆弱性への対応

    サーバにインストールするソフトウェアが多いため、構成が複雑になり、脆弱性などの対応が頻繁になります。

  • 操作が難しい

    GUI(デスクトップ) を利用するためにはコンソールか、リモートデスクトップ・VNCを利用する必要があります。そのため環境を用意したり、操作する側に知識の習得や手間が必要になります。

上記のような問題の対策として、Linuxサーバではコマンドラインでのシステム管理が一般的です。ただコマンドラインでの操作は、一定以上のスキルや技術、経験が求められるため、サーバ管理者はエンジニアなど資格や知識のある人材でなければ操作が難しく感じられます。しかし、サーバ管理ツールであるCockpitを利用することでこの課題を解決することができます。

Cockpit(コックピット)とは

Cockpitとは、Linuxを管理するためのWEBインタフェースです。Cockpitは、Redhat社がスポンサーとなって開発が進められています。Red Hat Enterprise Linux 8(RHEL8)以降から、標準搭載されるようになりました。Cockpitは、RHEL8.0のリリースの同時期に機能が強化されました。リリース直後も基本的な機能は利用できるものの、ネットワーク/Firewalldの管理や仮想マシンの管理などに難がある状態でした。しかしRHEL8.4がリリースされた2021 年、Cockpitも常に継続して開発され機能改善が行われています。2022 年現在のCockpitは一般的なシステム管理・仮想マシンの管理などに十分な機能を備えています。Cockpitを利用することで、サーバ管理者はサーバのアカウント管理やネットワーク管理などの重要な管理業務の仕事をWEB UIから行うことができるようになります。Cockpitは、Linuxのサーバ内にあるAPIやdbus等の機能を使用してWebUIを提供しています。Cockpitは、コマンドラインとGUIツールの中間的な位置づけとなっています。

Cockpitのログイン画面

Cockpitのログイン画面

Cockpitの特徴

Cockpitの主な特徴について大きく4つを以下で解説します。

余計なソフトウェアやライブラリを必要としない

Cockpitは、GUIほど余計なソフトウェアやライブラリをサーバにインストールする必要がありません。Cockpitのパッケージを一括でインストールするとその他の必要なパッケージもすべて含まれているので、まとめてインストールされるため簡単にインストールが可能です。

WEBインタフェースでシステムの管理ができる

Cockpitは、WEBインターフェースからサーバに接続し、管理や操作をすることが可能になります。そのため、サーバ管理者はサイトを使うことができれば、資格やコマンドラインの知識があまりなくても操作することができます。システムのログや負荷情報はグラフ等で表示されているため、サーバ管理の初心者でも理解しやすく簡単に参照できます。難しいコマンドを覚えていなくとも、マウスをクリックすることでログを見ることができます。また、デスクトップGUIを必要としないため、コンソールやリモートデスクトップ・VNCを利用する必要がなくなります。

Cockpitの管理画面

Cockpitの管理画面

システム管理に特化している

Cockpitは、ストレージの拡張やネットワーク設定等の比較的難しい作業をGUIから行うことができます。ネットワークトラフィックのグラフや、インタフェースの状態、ネットワークのログを確認することができます。そのほかに、システムの調査のための情報を収集するSOSレポートの作成やSELinuxのエラー情報の確認を行うことができます。

アプリケーションの導入により様々な機能を扱うことができる

Cockpitは、アプリケーションと呼ばれるプラグイン/アドオンをインストールすることで、機能を増やすことができます。アプリケーションは、Cockpit公式プロジェクト開発のもの以外にもRed Hat社やその他サードパーティからさまざまな種類のものが提供されています。アプリケーションを導入することでサブスクリプションの管理や仮想マシン、podmanの管理、サーバ内のファイルの閲覧・編集やデータベースのバックアップの取得ができるようになります。実際にはまだ利用できるアプリケーションは少ないですが、今後も開発が継続されていく可能性があります。またアプリケーションの開発のための情報が公開されているため、新しいアプリケーションの開発も可能になります。

Cockpitの機能

Cockpitには、以下の機能があります。

ネットワーク状態の確認や設定

Cockpitは、ネットワークの状態確認や、設定を行うことができます。単純なIPアドレスの設定だけではなく、bondインタフェースやteamインタフェース・ブリッジ・VLANの設定など幅広くサポートしています。またFirewalldの状態確認・設定を行うこともできます。

ネットワークの確認画面

ネットワークの確認画面

Firewalld の状態確認・設定変更

Firewalldの設定からサービスだけでなく、ポートごとの許可設定もできるようになっています。さらにゾーンの追加も可能です。

ファイアウォールの確認画面

ファイアウォールの確認画面

アカウントの管理

Cockpitは、メニュー画面からアカウントの管理ができます。サーバで使用可能なユーザの一覧も表示することができ、この一覧に表示されるユーザは、ユーザID が1000以上のユーザになります。ただし例外的に65534(no-body) 等特別な意味を持つユーザーは除外されています。そのほかにアカウントのロックやパスワードの設定、SSH鍵の登録作業も行うことができます。

アカウント一覧画面

アカウント一覧画面

システムの負荷状態の確認

システムのCPU、メモリ、 IO、 ネットワークトラフィック等をそれぞれリアルタイムでグラフで参照することができます。

負荷情報の確認画面

負荷情報の確認画面

ホスト名

Cockpitは、ホスト名の変更を行うことができます。

ホスト名の変更画面

ホスト名の変更画面

システム時間

時間の設定では、NTPを自動的に使用を選択すると時刻同期が行われるようになります。これ以外にも手動での時刻設定や、任意のNTPサーバとの時刻同期設定もできるようになっています。

時間の設定画面

時間の設定画面

パフォーマンスプロファイル

tunedのプロファイル変更フォームが表示され、選択することでプロファイルの変更を行うことができます。

パフォーマンスプロファイル変更画面

パフォーマンスプロファイル変更画面

ログの確認

Cockpitは、システムのログを確認することができます。ここで確認可能なログはjournaldに保存されたログです。ログのレベル(アラート以上、エラー以上等) でログを絞ることや、決められた期間(本日/過去24 時間/過去1 週間) でログを絞り、検索することができます。

ログの確認画面

ログの確認画面

SOSレポートの作成

Cockpitは、SOSレポートの作成を行うことができます。SOSレポートは、システムの調査のための情報を収集するツールです。収集したデータファイルはアーカイブとして固められて、システム上に配置されます。なおこの機能を利用するためには、sosパッケージをインストールする必要があります。Cockpitから情報の収集を行うと、レポートのダウンロードができるようになります。ただし、Cockpit上からではsosreport コマンドの詳細なオプションを指定することができないため、状況によってはコマンドラインでの操作が必要になります。

SOSレポート作成画面

SOSレポート作成画面

SELinuxトラブルシュート

SELinuxのエラー情報の確認ができます。アラートの情報の他に、改善策を提示してくれています。わかりにくい監査ログを、絞って表示することも可能です。

エラー情報画面

エラー情報画面

サブスクリプションの管理

サブスクリプションの登録・状態を確認できます。アカウントの他にアクティベーションキーにて登録も可能になっています。サブスクリプションの開始日は終了日がわかりやすく表示されるため、更新時期を調べる際に便利になっています。

サブスクリプションの管理画面

サブスクリプションの管理画面

ソフトウェアの更新

パッケージのアップデート情報の確認や、パッケージアップデートを行うことができます。この画面で、セキュリティアップデートや全てのアップデートのインストールを行うことができます。また、自動アップデートの有効/無効化も設定可能です。アップデート内容のサマリも表示されていますが、英語での表示にしか対応していません。また選択的に単一のパッケージをアップデートするなどの操作も対応していません。

ソフトウェアの管理画面

ソフトウェアの管理画面

デージーネットの取り組み

デージーネットでは、数多くのLinuxサーバを構築している実績を踏まえ、コマンドラインでの操作が苦手というご相談を受ける自社のクライアントに向け、課題を解決するために管理ツールであるCockpitの導入の提案を行っています。Cockpitを利用することで、コマンドラインの知識の少ない担当の者でも、PCからシステムの状態の確認や解析などができます。各種管理業務の仕事の効率化が実現でき、管理費のコスト削減にもつながります。詳細やインストール方法はCockpit調査報告書に掲載していますので、参考にしてください。

情報の一覧

Cockpit調査報告書

無料資料ダウンロード

Cockpitは、Linuxを管理するためのWEBインタフェースです。本記事はLinuxの管理ソフトウェア「Cockpit」について解説した調査報告書です。インストールの方法や基礎的な仕組み、利用方法について記載しています。無料で取得することが可能です。

OSSのおすすめ監視サーバ・監視ツール「稼働状況の可視化」

おすすめ監視サーバ

サーバシステムでは、正常にサービスが行われていることを確認するために、サーバ管理者がシステムの負荷やアクセス量などを監視する必要があります。今回は、費用のかからない、サーバーの稼働状況の可視化ツール3種について違いや、特徴を説明します。

Cockpitを利用したサーバ管理インターフェースの導入事例

構築事例

製造業者様にてメールサーバにCockpitを導入した事例です。お客様はメールサーバ管理をコマンドラインインターフェースで行っていたため、操作が簡単なGUIの導入をご要望でした。また、現状のメールサーバに影響が出ないよう、最小限のGUI構成をインストールすることを検討されていました。

デモのお申込み

もっと使い方が知りたい方へ
操作方法や操作性をデモにてご確認いただけます。使い方のイメージを把握したい、使えるか判断したい場合にご活用下さい。デモをご希望の方は、下記よりお申込みいただけます。

デモをご希望の方

デモの申し込みイメージ

OSS情報

Cockpit〜Linuxサーバ管理のOSS〜
Linuxではコマンドラインでのシステム管理が一般的です。コマンドラインでの操作は、知識のある人でなければ操作が難しく感じられます。Cockpitはこの課題を解決することができます。
Cockpitのアプリケーション
Cockpitには、アプリケーションというアドオン機能が存在します。アプリケーションを追加することで、新たな機能が使えるようになります。ここではCockpitのアプリケーションについて紹介します。

Cockpit〜Linuxサーバ管理のOSS〜の先頭へ