mackerel-agentのyumとaptの新パッケージリポジトリのお知らせ

この度、新しいLinuxディストリビューション向けに、yumとaptの新パッケージリポジトリをそれぞれ公開いたしました。従来のパッケージリポジトリも引き続きメンテナンスしますので、既存の環境をすぐに切り替えていただく必要はありません。それぞれの詳細なインストール方法は以下をご覧ください。

https://mackerel.io/my/instruction-agent

このエントリでは、従来のパッケージリポジトリを “v1"、新リポジトリを "v2” として説明します。

対応ディストリビューションについて

v1、v2の対応ディストリビューションは以下のとおりです。Amazon Linuxは独立したリポジトリがあるため、今回は関係ありません。

リポジトリ 対応ディストリビューション
yum v1 CentOS 6/7
yum v2 CentOS 7以降
apt v1 Debian 7/8, Ubuntu 14.04/16.04
apt v2 Debian 8以降、Ubuntu 16.04以降

v2リポジトリの特徴

v2リポジトリには以下のような特徴があります。

  • Systemd直接対応
  • プラグインパッケージの容量大幅削減
  • SHA256でのgpg署名
  • 64bit版のみ提供

Systemd直接対応

SysVinit形式の起動ファイルを廃止し、Systemdを直接サポートするようになりました。これにより、mackerel-agentがより安定して動作します。

それに伴い、ログがJournalに出力されるようになりました。mackerel-agentのログの確認は以下のコマンドでおこなえます。

sudo journalctl -u mackerel-agent.service

プラグインパッケージの容量大幅削減

ビルド方法を見直し、mackerel-agent-pluginsとmackerel-check-pluginsパッケージのファイルサイズが1/10程度になりました。現状の最新版では以下のとおりです。

パッケージ v1 v2
mackerel-agent-plugins(v0.28.0) 56.6MB 4.23MB
mackerel-check-plugins(v0.10.4) 20.5MB 2.75MB

パッケージリポジトリをv1からv2に更新する方法

すでにmackerel-agent等がインストールされている環境をv2リポジトリに切り替えたい場合は、一旦、v1リポジトリでインストールしたパッケージを削除し、v1リポジトリの設定自体も削除してから、v2リポジトリのセットアップをおこなう必要があります。

以下にそれぞれの削除手順を案内します。

削除手順を行う前に念の為、設定ファイル(/etc/mackerel-agent/mackerel-agent.conf, /etc/sysconfig/mackerel-agent, /etc/default/mackerel-agent)のバックアップを取っておくことをおすすめします。

yum v1リポジトリ削除手順

sudo yum remove -y mackerel-agent mackerel-agent-plugins mackerel-check-plugins mkr
sudo rm /etc/yum.repos.d/mackerel.repo
sudo yum clean all

この手順実行後、設定ファイルは /etc/mackerel-agent/mackerel-agent.conf.rpmsave /etc/sysconfig/mackerel-agent.rpmsave にそれぞれリネームされて保存されます。

apt v1リポジトリ削除手順

- sudo apt-get remove -y mackerel-agent mackerel-agent-plugins mackerel-check-plugins mkr
- sudo rm /etc/apt/sources.list.d/mackerel.list
- sudo apt-key del C2B48821
- sudo apt-get clean

この手順を実行しても、設定ファイルは削除されません。

v2リポジトリのインストール方法

それぞれ上記の削除作業を完了の後、mackerel-agentのインストールをおこなってください。手順は以下を参照下さい。

https://mackerel.io/my/instruction-agent

Provisioning Toolchainに関して

公式で提供している、Chefのcookbookや、AnsibleのRoleに関しては順次対応を進めてまいります。