マジセミドライブ

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

OSS情報

2020.01.01

【OSS情報アーカイブ】Serverspec

【OSS情報アーカイブ】Serverspec

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

「Serverspec」とは

基本情報

概要

Serverspec(サーバスペック)とは、サーバ状態のテスト自動化フレームワークです。UNIX/LinuxサーバとWindowsサーバに対応します。

基本説明

Serverspecは、構築したサーバ環境が意図した通りに構成されているかについて自動的に確認作業を行えるツールです。

Serverspecの本質は『テスト駆動によって、インフラコードのリファクタリングや開発を促進すること』としています。

経緯

Serverspecは、宮下剛輔氏によって開発されました。

主な特徴

Ruby実装

Serverspecは、Rubyで実装されています。

そのため、UNIX/Linux系サーバだけではなく、RubyがインストールされているWindowsサーバでも利用できます。WindowsサーバからLinuxサーバのテストを実行したり、逆に、LinuxサーバからWindowsサーバのテスト実行もできます。

確認できること

「意図通りに適切にサーバ環境に反映されていること」を確認できます。「パッケージが正しくインストールされているか?」「TCPの何番ポートが正常にLISTEN状態になっているか?」「ファイアウォール設定で、あるIPアドレスからのアクセスをブロックする設定になっているか?」など、意図した設定通りにサーバが稼働しているかどうかを確認できます。

「意図していない影響がサーバ環境に発生していないこと」を確認できます。「iptablesの設定を変更した結果、あるプロセスにエラーが発生してしまっている」などの状況を確認できます。

構成管理ツール「Chef/Puppet」のように、「サーバがあるべき姿」をコード化することにより、サーバ状態を定義できます。

プログラミング手法である「TDD(テスト駆動開発)」のように、サーバの構築を実施し、繰り返しテストを行うことにより、常に「サーバがあるべき姿を維持できているか」を確認できます。

サーバ構築手段に縛られない

従来は、システム環境自動構築ツール(Chef/Puppetなど)で構築した場合は、それに依存するテストフレームワークが必要でした。

Serverspecは、サーバの構築方法に関わらず、サーバ状態の確認を行えます。

そのため、手動で構築したサーバであっても対応できます。

シンプルアーキテクチャ

Serverspecのテスト実行は、「テスト対象サーバにSSHログインして、コマンド実行結果を確認する」というシンプルなアーキテクチャです。対象サーバに専用エージェントをインストールするなどの手間は不要です。

Linuxサーバの場合はSSH接続、Windowsサーバの場合はWinRM(Windows Remote Management)接続が可能であれば利用できます。ローカル実行も可能です。

LinuxサーバへのSSH接続を経由したリモート実行パターンの場合、Serverspecサーバからテスト対象のサーバに対してSSH接続をして、各種確認用コマンドを実行します。そして、Serverspecサーバにて、その結果が正常かどうかを評価します。

OSごとのコマンド差異を吸収

Serverspecは、対象サーバのOS種別を判別して、テスト用実行コマンドを自動的に切り替えて処理を行います。

そのため、OS種別ごとにテストコードを書き分ける必要がありません。

テストスクリプト

テストスクリプトは、Rubyのテストフレームワーク「RSpec」に準拠しています。

同様製品

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

オープンソース製品:「Infrataster」など。

ライセンス情報

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

ダウンロード

ダウンロードページ

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

この記事のタグ一覧

おすすめの記事

経営活動に活用できる 原価管理 を実現するには? 〜製造業の現実的な課題に向き合い、現場視点から改善する原価管理手法の必達プロセスをご紹介〜

ウェビナーまとめ

2024.05.15

経営活動に活用できる 原価管理 を実現するには? 〜製造業の現実的な課題に向き合い、現場視点から改善する原価管理手法の必達プロセスをご紹介〜

2024年3月12日に三菱電機ITソリューションズ株式会社とアットストリームパートナーズ合同会社の共催で、組立加工製造業向けのセミナー「なぜか高くなる原価を管理する 不確実性の時代を乗り切るためのコスト戦略とは」が開催されました。本セミナーでは、製造業における原価管理の現状と改善手法について深く掘り下げ、経営活動への具体的な活用方法を提示しました。今回は、その講演の要点をお伝えします。

【OSS情報】LLMトレーニング用ライブラリ「 GPT-NeoX 」📚

OSS情報

2024.07.18

【OSS情報】LLMトレーニング用ライブラリ「 GPT-NeoX 」📚

「 GPT-NeoX 」は、GPU上で大規模言語モデル(LLM)を効率的にトレーニングするためのライブラリです。NVIDIAのモデルを基に独自の最適化が加えられ、オートレグレッシブ言語モデルのトレーニング手法を集約しています。

【OSS情報】WebベースAPI開発スイート「 Hoppscotch 」🌐

OSS情報

2024.07.04

【OSS情報】WebベースAPI開発スイート「 Hoppscotch 」🌐

「 Hoppscotch 」は、オープンソースのAPI開発エコシステムで、使いやすさとアクセシビリティを重視した軽量なWebベースのスイートです。無料版と有料版があり、PostmanやInsomniaの代替として利用可能です。