Cockpit とは

Webブラウザベースのサーバー管理ツールです。要は Webmin みたいなものです。
CPU等のリソース確認やログの閲覧、サービスの起動/停止、サーバーの再起動等がWebから行えるようになります。
プラグインを導入することで Docker コンテナの管理やパッケージの管理なども可能になります。
また、マルチサーバーにも対応しています。

目次へ戻る

Amazon Linux 2 と Cockpit について

RedHat 系のディストリビューション(RHEL、CentOS 等)では Core リポジトリに登録されているので、何も設定せずに Yum からインストールできます。
しかし、Amazon Linux 2 ではパッケージがありません。恐らく AWS コンソールを使え、ということなのでしょう。
他のディストリビューションでは Core に登録されているが故に、epel や remi といった有名どころのサードパーティのリポジトリにも存在しないので導入は大変です。

目次へ戻る

Cockpit のプレビュー版

前述のとおり、Cockpit は epel や remi のリポジトリにはありません。が、Fedora Copr にプレビュー版が登録されています。
@cockpit/cockpit-preview Copr
今回はこちらを使用します。

目次へ戻る

導入

まずはリポジトリを登録します。

# amazon-linux-extras install epel
# cat << 'EOS' > /etc/yum.repos.d/cockpit-preview.repo
> [group_cockpit-cockpit-preview]
> name=Copr repo for cockpit-preview owned by @cockpit
> baseurl=https://copr-be.cloud.fedoraproject.org/results/@cockpit/cockpit-preview/epel-7-$basearch/
> type=rpm-md
> skip_if_unavailable=True
> gpgcheck=1
> gpgkey=https://copr-be.cloud.fedoraproject.org/results/@cockpit/cockpit-preview/pubkey.gpg
> repo_gpgcheck=0
> enabled=1
> enabled_metadata=1
> EOS

ここでパッケージを確認

# yum list | grep cockpit
cockpit.x86_64                         188-1.el7                     group_cockpit-cockpit-preview
cockpit-bridge.x86_64                  188-1.el7                     group_cockpit-cockpit-preview
cockpit-dashboard.x86_64               188-1.el7                     group_cockpit-cockpit-preview
cockpit-debuginfo.x86_64               188-1.el7                     group_cockpit-cockpit-preview
cockpit-doc.x86_64                     160-1.el7.centos              group_cockpit-cockpit-preview
cockpit-doc.noarch                     188-1.el7                     group_cockpit-cockpit-preview
cockpit-docker.x86_64                  188-1.el7                     group_cockpit-cockpit-preview
cockpit-integration-tests.x86_64       161-1.el7.centos              group_cockpit-cockpit-preview
cockpit-kdump.noarch                   177-1.el7                     group_cockpit-cockpit-preview
cockpit-kubernetes.x86_64              188-1.el7                     group_cockpit-cockpit-preview
cockpit-machines.x86_64                160-1.el7.centos              group_cockpit-cockpit-preview
cockpit-machines.noarch                188-1.el7                     group_cockpit-cockpit-preview
cockpit-machines-ovirt.noarch          188-1.el7                     group_cockpit-cockpit-preview
cockpit-networkmanager.noarch          177-1.el7                     group_cockpit-cockpit-preview
cockpit-ostree.x86_64                  162-1.el7.centos              group_cockpit-cockpit-preview
cockpit-ostree.noarch                  176-1.el7                     group_cockpit-cockpit-preview
cockpit-ovirt.x86_64                   160-1.el7.centos              group_cockpit-cockpit-preview
cockpit-packagekit.x86_64              160-1.el7.centos              group_cockpit-cockpit-preview
cockpit-packagekit.noarch              188-1.el7                     group_cockpit-cockpit-preview
cockpit-pcp.x86_64                     188-1.el7                     group_cockpit-cockpit-preview
cockpit-selinux.noarch                 0.113-1.el7.centos            group_cockpit-cockpit-preview
cockpit-selinux-policy.noarch          0.83-1.el7.centos             group_cockpit-cockpit-preview
cockpit-shell.noarch                   126-1.el7.centos              group_cockpit-cockpit-preview
cockpit-sosreport.noarch               177-1.el7                     group_cockpit-cockpit-preview
cockpit-storaged.noarch                188-1.el7                     group_cockpit-cockpit-preview
cockpit-subscriptions.noarch           161-1.el7.centos              group_cockpit-cockpit-preview
cockpit-system.noarch                  188-1.el7                     group_cockpit-cockpit-preview
cockpit-tests.x86_64                   188-1.el7                     group_cockpit-cockpit-preview
cockpit-ws.x86_64                      188-1.el7                     group_cockpit-cockpit-preview

Cockpit関連のパッケージが表示されました。
cockpit.x86_64 が本体で、 cocpit-XXX はプラグインになります。
CentOS 用のリポジトリを無理やり使用しているため、一部 Amazon Linux 2 では利用できないパッケージがあるのでご注意ください。インストールしようとするとパッケージ名が異なるのか依存関係の解決に失敗します。
今回は下記のものをインストールします。

# yum install cockpit cockpit-docker cockpit-packagekit cockpit-shell

次にユーザーを追加します。
Cockpit へは Unix ユーザーでログインするのですが、ec2-user にはパスワードがないのでそのままではログインできません。なのでパスワード付きのユーザーを作成するか、ec2-user にパスワードを設定する必要があります。

# useradd yosuke
# passwd yosuke
ユーザー yosuke のパスワードを変更。
新しいパスワード:                   // ←パスワード入力
新しいパスワードを再入力してください:  // ←パスワード再入力
passwd: すべての認証トークンが正しく更新できました。
# usermod -aG wheel yosuke

最後に Cockpit を起動します。

# systemctl start cockpit

起動できたらブラウザから https://<サーバーのIP>:9090 にアクセスしてください。
Cockpit のログイン画面が表示されるはずです。

上で作成したユーザーのユーザー名とパスワードでログインできます。

目次へ戻る

Cockpit のスクリーンショット集

Cockpitがどんなものなのかを画像で軽くご紹介

目次へ戻る
この記事をシェアする:

東日本橋の制作・開発会社 プレスマンのスタッフブログ