マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2020.01.01

【OSS情報アーカイブ】Serf

【OSS情報アーカイブ】Serf

※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。

「Serf」とは

基本情報

概要

Serf(サーフ)とは、非集中/分散型のクラスタ管理ツールです。対象サーバにバイナリを1つ配置して軽量エージェントを起動するだけで、手軽にクラスタを構成できます。

基本説明

Serfは、管理用サーバを必要としないクラスタを簡単に構築できます。

クラスタに所属する複数のサーバで、「死活管理」「障害探知」「一斉にセットアップ/デプロイ用コマンド実行」「バージョンの確認」などを行えます。

発生したイベントに対応してスクリプトを実行させることも可能です。

ポイント

・Go言語実装
・シンプル(機能が必要最小限)
・軽量
・管理サーバ不要(非集中型ソリューション)
・クラスタ構成が容易
・主要プラットフォームで利用可能(Linux, Mac OS X, Windows)
・高可用性
・障害耐性

経緯

HashiCorp社がオープンソースプロダクトとして開発/公開しています。

ユースケース

・構成管理ツール(ChefAnsibleなど)を一斉実行
・監視ツール(Nagios、Sensu、Zabbixなど)の監視対象の追加/削除の自動化
・特定のサーバプロセスを一斉再起動
・インメモリDB(RedisMemcachedなど)のクラスタリング
・DNS更新 など

主な特徴

簡単セットアップ

Serfのセットアップは、クラスタ化したいサーバに実行用バイナリファイルをインストールするだけで完了します。

システムに変更を加えずに即座に開始できます。

クラスタメンバー管理機能

主なメンバー管理機能
・クラスタ参加/離脱管理
・メンバー情報管理(ホスト名、IPアドレス、タグ 他) など

障害検出(回復)機能

Serfは、クラスタメンバーが障害などでダウンした場合、それを検出し、残りのメンバーに通知します。また、自動的に復旧させるように動きます。

この段階で指定するスクリプトを動作させることも可能です。

イベント伝搬機能

Serfは、発生したイベントをクラスタ全体で瞬時に共有します。100台のサーバ構成で約2秒で全体に伝播するとされています。

特定のイベントに対するカスタムスクリプトを実行できます。

イベントハンドラ

Serfが発行するイベントは以下のようなものがあります。
・メンバー参加
・メンバー離脱
・メンバーダウン
・メンバーアップデート
・メンバー解除
・カスタムイベント発行
・カスタムクエリ発行 など

カスタムイベント

独自のイベントをクラスタ内に伝搬させることも可能です。

「デプロイトリガー」「クラスタ再起動」などの用途に使用されます。

同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「Apache Mesos」「Pacemaker」など。

ライセンス情報

Serfのライセンスは「Mozilla Public License Version 2.0」です。このライセンスに従うことを条件として、ソースコードの改変と公開が許可されています。

ダウンロード

ダウンロードページ

参考元サイト

・Serf
・gihyo.jp →Serf/Consulで管理を自動化!~実践的な手法を紹介~ 第1回 Serf入門:動的に変化する環境を簡単に管理
・Think IT →自動化・省力化のためのSerf入門
・SOTA →Serf 虎の巻
・Gunosy Tech Blog →3分でまとめ読むSerfとConsulの基本機能
・cloudpack.media →Serf はじめての運用ツール 〜 インストールとエージェント起動
・さくらのナレッジ  →コンテナ/クラウド環境におけるSerfを使った構成管理

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

この記事のタグ一覧

おすすめの記事

【AIツール実験室】チャットAI対抗「添削能力」選手権🏆

AIツール実験室

2023.12.27

【AIツール実験室】チャットAI対抗「添削能力」選手権🏆

各チャットAIの「添削能力」について比較確認をしています。 「ChatGPT4と同等の添削能力を発揮した無料チャットAI」にご注目ください。 また、 ChatGPTカスタマイズ機能「GPTs」を利用して作成した GPTs文章添削機能「添削師匠さん✍️」を紹介しています。 課金勢は試しに使ってみてください。

【IT用語解説】「 デジタルヒューマン 」とは😊

IT用語解説

2024.01.26

【IT用語解説】「 デジタルヒューマン 」とは😊

【IT用語解説】「 デジタルヒューマン 」として、「デジタルヒューマンとは何か?」「どのようにして作成できるのか?」「私たちの世界にどのような影響を与えているのか?」などについて、まとめています。

AIツール関連 記事リストポータル

AIツール

2023.10.05

AIツール関連 記事リストポータル

AI 関連の記事をまとめたポータルページです。