Cockpitはかんたんに使えて、
Linuxサーバーの「UI」となるCockpit
Cockpitをインストールすると次のような処理を、
- ユーザーアカウント管理
- システムの再起動やシャットダウン
- systemdを使用したサービスの起動・
停止・ 有効化・ 無効化などの設定 - systemdのjournalctlを利用したシステムログの閲覧
- udisks2もしくはstoragedを利用したストレージ関連のモニタリング
- NetworkManagerを利用したネットワーク管理
- Performance Co-Pilotで取得した各種メトリクスの表示
- PackageKit経由のパッケージ管理
- Web UIが動いているマシンから他の管理マシンへのSSHログイン
- Dockerコンテナの管理
- 管理対象システム上のシェル操作
見も蓋もない言い方をすれば
その開発には主にRedHatの開発者たちが関わっているようです。そのためSOS Reportの取得やサブスクリプションの管理なども行えます。ちなみに昨年末、
そして今年の3月にはDebian DeveloperとしてのMartin Pittが自分自身でCockpitをDebianパッケージ化し、
さらに今年の5月には、
Cockpitのインストール
Ubuntu 16.-t xenial-backports
」-t リリース名-backports
」
$ sudo apt -t xenial-backports install --no-install-recommends cockpit (中略) The following NEW packages will be installed: cockpit cockpit-bridge cockpit-dashboard cockpit-system cockpit-ws dconf-gsettings-backend dconf-service glib-networking glib-networking-common glib-networking-services gsettings-desktop-schemas libcrack2 libdconf1 libjson-glib-1.0-0 libjson-glib-1.0-common libproxy1v5 libpwquality-common libpwquality-tools libpwquality1 libssh-4 0 upgraded, 20 newly installed, 0 to remove and 0 not upgraded. Need to get 1,999 kB of archives. After this operation, 4,907 kB of additional disk space will be used. (後略)
「--no-install-recommends
」--no-install-recommends
オプションをつけて)
基本的にインストールしただけでセットアップ完了です。Ubuntuの場合はsystemdのSocket Unitが自動的に有効化されています。
$ systemctl status cockpit.socket ● cockpit.socket - Cockpit Web Service Socket Loaded: loaded (/lib/systemd/system/cockpit.socket; enabled; vendor preset: enabled) Active: active (listening) since Sun 2017-07-16 09:08:43 UTC; 19min ago Docs: man:cockpit-ws(8) Listen: [::]:9090 (Stream)
これにより9090番ポートにアクセスしてはじめてCockpitのサービスを立ち上げることになります。つまりサービスを常駐させる必要がないため、
$ systemctl status cockpit.service ● cockpit.service - Cockpit Web Service Loaded: loaded (/lib/systemd/system/cockpit.service; static; vendor preset: enabled) Active: inactive (dead) Docs: man:cockpit-ws(8)
Cockpitへのアクセス
インストールができたので、

Cockpitは起動時に/etc/
」.cert
」SEC_
のエラーが表示されるわけです。正式な対応としては、/etc/
」.cert
」
そのまま自己署名証明書を使う場合は、

$ sudo openssl x509 -in /etc/cockpit/ws-certs.d/0-self-signed.cert -noout -text -fingerprint -sha256 Certificate: Data: Version: 3 (0x2) Serial Number: 18178437666814379984 (0xfc46c8be960d47d0) Signature Algorithm: sha256WithRSAEncryption Issuer: O=cd7d49e86dca4b89b455011597378bc8, CN=cockpit (中略) SHA256 Fingerprint=88:5C:92:47:98:AE:8B:95:46:AA:30:EA:EE:3C:EF:5C:5E:1E:65:DE:AC:B7:19:9A:B8:F1:E4:9C:A1:79:6B:38
証明書の確認が終わったら、

ログインアカウントはCockpitのWeb UIが動いているサーバーのローカルユーザーのアカウントをそのまま利用します。初期設定ではそのアカウントのユーザーとパスワードを用いて、
とにもかくにもパスワードログインを使う場合は、sudo passwd ubuntu
」


ログインしたらそのシステムのモニタリング画面が表示されます。このシステムモニターはリアルタイムのデータしか表示しません。つまりログインしていない間の情報は取得や記録を行いません。何かあってからログインしても、




Cockpitはウェブベースのシェル機能を備えています。WebSocket経由でログインすることでそのユーザー権限で立ち上がるcockpit-bridgeが、sudo
を使ってシステム管理を行えるのです。ちなみにByobuを起動することも可能ではありますが、
別のマシンを登録する
Cockpitは複数のマシンをひとつのダッシュボード上で管理する機能をサポートしています。つまり一台のマシンにCockpitのWeb UI
まず追加対象となるマシンにcockpit-bridgeをインストールしましょう。ついでにsystemd関連の機能やシェル機能を提供するcockpit-systemも一緒にインストールしておきます。
$ sudo apt -t xenial-backports install --no-install-recommends cockpit-bridge cockpit-system
マシン間のアクセスはSSHのみサポートしています。つまりcockpit-wsが動いているマシンからWeb UIからログインしたユーザーの権限で、authorized_
に追加しておきましょう。
cockpit-wsが動いているマシン上の公開鍵は、

SSH鍵が使えるようになったら

追加するマシンのアドレスをここで入力します。公開鍵でSSHログインできる状態になっているのであれば、

このようにCockpitは、