【2025年版】よく使われる代表的なOSS(オープンソースソフトウェア)を一覧にまとめてみた

この記事では、日本でよく使われる代表的なOSS(オープンソースソフトウェア)を体系的にまとめることを目的としている。

参考:OSSとは

プログラミングのソースコードを広く一般に公開し、誰でも自由に扱って良いとされるソフトウェアのこと。インターネットを通じて、簡単に入手することが出来、誰でも無償で自由に使用、複製、再配布、自分で開発したコードへの組み込みが可能である。

日本OSS推進フォーラムの鳥観図ワーキンググループが作成した『OSS鳥瞰図2025年版』をもとに、各OSSについて簡単な解説をしている。また、各OSSの公式サイトへのリンクも付けているため、参考にして欲しい。

なお、プログラミングスキルを向上するためには、独学では限界がある。Udemyという教育プラットフォームではIT系のオンライン講座が豊富にそろっているので、参考にしてみてほしい。

学習と実践でスキルアップしよう(お得に).   対象コースが¥1800から

デスクトップ

オンライン会議

Big Blue Button

遠隔教育のためのWeb会議システム。最大接続数は200名程度。音声通話、PC画面やメモの共有、チャットルームなどの機能を備えている。

Webブラウザ

Firefox

世界で最も使われているWebブラウザーの一つ。自由度が高いのが特徴。

Thunderbird

Mozillaが主となり開発を進めているオープンソースの高機能メールクライアントソフトウェア。「タブ表示」「アーカイブ機能」「Gmail連携」「チャット機能」「ニュースクライアント機能」「高いカスタマイズ性」などの特徴がある。

オフィススイート

Apach OpenOffice

OpenOffice.orgの後継プロジェクトの一つであり、IBM LotusSymphonyの後継プロジェクトでもあります。Microsoft Offieceとの互換性があり、基本的な操作方法はほとんど変わらないです。

業務アプリケーション

ERP・CRM

Dolibarr(ドリバー)

概要: Dolibarr(ドリバー)は、オープンソースのERP/CRMソフトウェアです。小規模から中規模の企業や団体向けに設計されており、顧客管理、在庫管理、会計、受発注管理など、ビジネスに必要な基本的機能をシンプルに使えるのが特徴です。

特徴:

・Webブラウザ上で動作し、直感的なUIを提供
・モジュール形式で必要な機能を追加可能
・小規模チームでも導入しやすい軽量設計
・無料で使えるコミュニティ版と、有償サポートを受けられるエンタープライズ版が存在

iDempiere(アイデンピエーレ)

概要: iDempiere(アイデンピエーレ)は、ADempiere(アデンピエーレ)というオープンソースERPから派生したERPソフトウェアです。ADempiereはさらにCompiereをベースにしており、長い歴史と大規模企業向けの豊富な機能を継承しています。

特徴:
・在庫管理、購買管理、販売管理、財務会計、製造管理など、多彩で高度なERP機能を包括
・高度なワークフロー管理やカスタマイズ性が強み
・Javaをベースとしたアーキテクチャにより、大規模環境や複雑な業務プロセスにも対応
・世界的なコミュニティにより継続的に改良が加えられている

人事・給与

Mosp

国産ベンダーが開発している勤怠管理システム。

グループウェア

Zimbra

メッセージ&グループウェアのソリューションシステムです。エンタープライズクラスのメール/カレンダー/コラボレーション機能を提供しています。
クライアント側とサーバ側両方のコンポーネントを含んでいます。

BA・BI

Pentaho

オープンソースのBIツール。レポーティング、インタラクティブ(対話型)分析、ダッシュボード、データ統合/ETL(Extract/Transform/Load)、データ・マイニング、その他、BIプラットフォームとBIに必要なすべての機能が用意されております。

Webサイト構築

CMS・ポータル

WordPress

概要
オープンソースのCMS:WordPressはGPLライセンスのもと、無料で誰でも自由に利用・改変が可能です。世界中の多くの開発者が参加し、アップデートや新機能の開発を続けています。

PHPおよびMySQLを使用:サーバーサイドで動作し、PHP言語とMySQL(またはMariaDB)データベースを用いて構築されます。レンタルサーバーでも広く対応しているため、導入が比較的容易です。

・豊富なユーザーコミュニティ:世界中のユーザーが数多く存在し、日本国内でも大規模なコミュニティがあります。フォーラムやSNSなどで疑問点を解決しやすく、さまざまなナレッジが共有されています。

eコマース

EC-CUBE

日本の株式会社EC-CUBEが開発するEC向けのコンテンツ管理システム。日本国内で開発されているため、海外製のソフトウェアよりも自然な日本語表記となっています。ただし、機能はやや少なめです。

Web・APサーバー

Webサーバー

Apache HTTP Server

全世界の約半数で使用されている実績のあるWebサーバー。世界中で最も人気の高いWebサーバソフトウェアの一つ。

APサーバー

Apache Tomcat

Javaのアプリケーションサーバー。Servlet, JSPの参照実装。商用のアプリケーションサーバに劣らない性能、信頼性を持つ。WebコンテナのみでEJBコンテナは含まない。

セキュリティ

ID管理

FreeIPA

FreeIPAはMicrosoftのActive Directoryと同様に、アカウント管理と集中認証を提供するLinux用のオープンソースセキュリティソリューションです。

FreeIPAは、389 Directory Server、MIT Kerberos、SSSDなどの複数のオープンソースプロジェクトの上に構築されています。

SSL・VPN・SSH

OpenVPN

OpenVPNはSSL/TLSをベースに各種機能を組み合わせたオールインワン型のSSL VPNです。

ビッグデータ

データ収集

Talend

多くの企業に利用されている企業データの統合プラットフォームです。単一のアプリケーションでオンプレミスとクラウド両方のデータ収集・変換・共有などが可能になっています。

Revolution R open

Revolution R openはデータ分析ツールです。R言語のデメリットである処理の重さを解消した点が特徴です。

分散処理

Apache Hadoop

大規模データを分散処理するためのミドルウェア。Java言語で開発されている。また、ペタバイト級のデータを処理することが出来る。

Apache Spark

Hadoopの後発として期待されるビッグデータ処理基盤。

【入門編】Apache Sparkとは何か | オワコンなのか

検索エンジン

Elasticsearch

Elastic社が開発する全文検索エンジン。

AI

機械学習

APACHE MLlib Spark

Apache Sparkは分散メモリRDDを活用することで、特定のデータに対する繰り返し処理に向くアーキテクチャーです。

MLlibはその特徴を活用して機械学習を実装することで、高速な学習処理を実現しています。MLlibは現在もビルドインの機械学習アルゴリズムを増加させており、実用的な機械学習用途でも十分に活躍できる存在となってきています。

CoreML

Appleが開発した機械学習のためのフレームワークです。機械学習モデルの仕様はオンデバイスで完結させることができ、さらにCreateMLというフレームワークを使うことで簡単に機械学習モデルを作成出来ることが特徴です。

Jubatus

Jubatus(ユバタス)はオンライン機械学習向け分散処理フレームワークです。

株式会社Preferred NetworksとNTTソフトウェアイノベーションセンタが共同開発した、日本発のオープンソースプロダクトです。

最終的に全ての人にスケーラブルなオンライン機械学習フレームワークを提供することがJubatusの目標です。

ディープラーニング・フレームワーク

Deeplearning4j

概要
・Java言語で開発されたオープンソースの深層学習ライブラリ
・JVM(Java Virtual Machine)上で動作するため、JavaやScala、Kotlinなどの環境で利用しやすい

特徴
・分散学習をサポートし、HadoopやSparkなどの大規模データ基盤と連携しやすい
・企業向けのエンタープライズ環境での利用を想定しており、Javaベースのシステムに組み込みやすい
・Python以外の言語(Java/Scala/Kotlin)を中心に開発する場合に最適

Keras

概要

・Pythonで書かれた高水準のニューラルネットワークAPI
・TensorFlowやTheano、CNTKなど、複数のバックエンドを選択して利用できる(現在はTensorFlowを標準バックエンドにしていることが多い)

特徴
・シンプルでわかりやすいAPI設計のため、初心者から研究者まで幅広く使われる
・モデルのプロトタイプ作成が容易で、実装スピードを重視する場面で便利
・学習・推論の処理速度や大規模分散学習などの詳細制御はバックエンド(主にTensorFlow)が担う

PyTorch

概要
・Facebook(Meta)AI研究所が中心となって開発したPythonベースの深層学習フレームワーク
・動的グラフ(Define-by-Run)を採用し、直感的なコーディングが可能

特徴
・Pythonとの親和性が非常に高く、インタラクティブにモデルを開発・デバッグしやすい
・研究用途で人気が高く、新しいネットワークアーキテクチャの実装に向いている
・学習済みモデルの運用やエッジデバイスでの利用も拡充しつつあり、産業用途でも採用が進んでいる

TensorFlow

概要

・Googleが開発・オープンソース化した深層学習ライブラリ
・グラフベースの計算モデルを採用し、分散学習からモバイル端末(TensorFlow Lite)やブラウザ(TensorFlow.js)まで幅広く対応

特徴
・大規模・高性能な散学習が可能で、クラウドとの連携も容易
・サポートする言語やプラットフォームが豊富(Python、C++、JavaScriptなど)
・企業や研究機関で広く使われており、エコシステムが充実している

AIエージェント

AutoGPT

・GPT-3.5やGPT-4などの大規模言語モデル(LLM)を活用し、「自律的に」タスクを遂行することを目指すオープンソースのプロジェクト。

・Pythonで実装されており、プロンプトの出力を再度入力として与える“ループ”構造を用いることで、連続的・自動的に目標達成のためのステップを考案・実行する。

・例として、与えられた目標に対して必要なタスクのリストを自動生成し、順次実行していく仕組みを提供。

・「GPTを自律エージェントとして動かす」コンセプトを実践した代表的な例であり、拡張性が高い。

BabyAGI

・AutoGPTと同様に、GPT系モデルを利用してタスク管理や自律的な実行を試すための、よりミニマルでシンプルなオープンソースプロジェクト。

・タスク管理にフォーカスしており、優先度の高いタスクをキュー(リスト)に追加しながら、タスクの生成と実行を繰り返す仕組みをもつ。

・サンプルコードの規模が小さいため、内部構造を学ぶ教材としてもよく利用される。

・自律エージェント構築の入門的コードとして注目されている。

OLMo

・「Open Language Model (OLMo)」の略称で、Allen Institute for AI (AI2) が主導する大規模言語モデルのオープンソースプロジェクト。

・透明性・再現性・共同研究を重視した方針で開発されており、学習データやモデルのアーキテクチャ、学習過程などを広く公開していくことを目指している。

・研究者コミュニティや開発者がLLMの内部構造や特性を詳細に検証しやすくするためのプラットフォーム的な存在。

・AIコミュニティ全体でのコラボレーションを促進することを主眼においている。

OpenHands

・他のプロジェクトほど広く認知されているわけではありませんが、「オープンソースでのAIエージェント構築」を目指す一例として言及されることがあります。

・一部にはロボット操作やマルチモーダル(音声・映像・テキストなど)を含むエージェント構築を行うためのフレームワークやツールキットとして紹介されているケースもあります。

・具体的には、複数のモジュール(LLMベースの推論、動作決定、外部API連携など)を組み合わせて「ハンズオン(Hands-on)」にAIエージェントを試作する目的のプロジェクトが存在します。

・プロジェクトとしての情報は多くありませんが、「エージェントに実世界のタスクを実行させる」系統の試みが主題となっていることが多いです。

: 「OpenHands」は同名・類似名のプロジェクトが複数存在するため、用途や機能は実装によって差があります。ロボティクスや手話(手の動き)に関する研究など、異なる分野で同名のオープンソースがあるため、利用の際はGitHubやドキュメントでプロジェクト概要を必ずご確認ください。

Pythia

・EleutherAIが公開しているオープンソースの大規模言語モデル(Large Language Model)ファミリー。

・小規模(数千万パラメータ)から中~大規模(数十億パラメータ)まで、複数サイズのモデルを提供している。

・学習データとしてThe Pile(書籍・論文・インターネットなど多岐にわたる大規模データセット)を利用し、言語モデルとしての汎用的な性能を目指している。

・学習手法やデータなどを公開しているため、研究者や開発者がモデルの評価、微調整、追加学習などを比較的容易に行える。

T5 (Text-to-Text Transfer Transformer)

・Google Researchが提案・公開した大規模言語モデルで、「あらゆるNLPタスクをテキスト入力からテキスト出力に統一的に扱う」ことをコンセプトにしている。

・文章要約、機械翻訳、質問応答など、幅広いタスクを同一フォーマット(text-to-text)で取り扱う。

・モデルサイズが複数ラインナップされており、Colabやクラウド環境で扱いやすい小規模版から大規模なパラメータ数を持つモデルまで用意。

・オープンソースとして公開されており、Transformersライブラリ(Hugging Face)などを通じて容易に利用・微調整が可能。

データベース

RDBMS

MariaDB

MySQLの派生として開発されているRDBMS。セキュリティ面やパフォーマンスがMySQLよりも向上しており、今後採用が増えていくと見込まれています。

MySQL

元々はSunMicroSystemsのDBだったが、OracleがSUNを買収。

DB管理

phpMyAdmin

webブラウザ画面でMySQLデータベースを管理するソフトウェア。画面構成がシンプルで操作が簡単に出来るのが特徴。

OS、仮想化、クラウド

OS

Android

Google社が提供するオペレーティングシステムの一つ。主にスマートフォンやタブレットで使用されている。

CentOS

セント オーエス。Red Hat Enterprise Linuxをベースにして作成されたLinuxディストリビューション。

FreeBSD

UNIX系OSの一つ。負荷が高まっても誤作動や停止が起こりにくい高い安定性が評価されており、大規模なサーバなどでの採用例が多い。

Ubuntu

ウブントゥ。高い完成度と使いやすさを誇る、世界で人気No.1のLinuxディストリビューション

ネットワーク仮想化

Open vSwitch

オープンソースで開発されているOpenFlowをサポートする仮想スイッチ。

仮想環境での仮想スイッチとしての役割を果たす。Linux標準のBridge機能に代わる機能を持つ。エンタープライズレベルの機能を提供することで注目を集めている。

Open Daylight

最も普及しているオープンソースのSDNコントローラ。

コントローラベース コード以外にも、フレームワークとして関連する機能(コントローラ アプリケーション、Southbound Protocol Plugin、ネットワーク仮想化プラットフォーム等)を既存のオープンソース技術を活用して開発されています

Infrastructure as a Service

Apache CloudStack

概要
・Apache Software Foundationが開発している、IaaS(Infrastructure as a Service)向けのクラウド管理プラットフォーム
・物理サーバ上の仮想マシンリソースを一元管理し、プライベートクラウドやパブリッククラウドを容易に構築・運用するための仕組みを提供

特徴
・マルチハイパーバイザ対応: KVM、XenServer、VMware、Hyper-Vなど複数のハイパーバイザをサポート
・シンプルなUIとAPI: Webベースの管理画面やRESTful APIを通じて、リソースの作成・運用が容易
・高い拡張性: 大規模環境へのスケールアウトや、ネットワーク機能(SDNなど)との連携が可能

ManageIQ

概要
・Red Hatが主導するマルチクラウド/ハイブリッドクラウド管理プラットフォーム
・仮想環境やパブリッククラウド、コンテナを含む幅広いインフラを一元管理できる

特徴
・マルチクラウドサポート: AWS、Azure、Google Cloud、OpenStack、VMwareなど、多様な環境を同一の管理画面・APIで扱える
・運用の自動化: プロビジョニング、ライフサイクル管理、ポリシー適用などを自動化する仕組みを提供
・レポート & モニタリング: 充実した可視化機能により、リソース使用状況の分析やコスト管理をサポート

oVirt

概要
・Red Hatが中心となって開発する、エンタープライズ向けの仮想化管理プラットフォーム
・KVM(Kernel-based Virtual Machine)をベースとし、vSphereなどの商用仮想化ソリューションに対抗できる機能を備える

特徴
・オープンソースの仮想化基盤: KVMとlibvirt上に構築されており、Red Hat Virtualizationのオープンソース版とも言える
・Webベースの管理インターフェース: 仮想マシンの作成・管理、ストレージやネットワークの設定を一元的に行える
・高い信頼性と可用性: Live Migration(稼働中の仮想マシンを停止せずにホスト移動)やHA構成が可能

OpenStack

概要
・大規模なコミュニティによって開発・運営される、クラウド基盤ソフトウェア(IaaS)
・多数のコンポーネント(Nova、Neutron、Cinder、Swiftなど)から構成され、プライベート/パブリッククラウドを構築でき

特徴

・モジュール構成: 計算資源(Nova)、ネットワーク(Neutron)、ストレージ(CinderやSwift)など、用途に応じたコンポーネントを組み合わせてシステムを構築
・大規模環境に対応: 複数のデータセンターや数千台レベルのサーバを管理するような大規模クラウドにも対応
・豊富なエコシステム: コミュニティが非常に活発で、サードパーティ製ツールや各種プラグインが多数存在

関連記事

OpenStackとは何か、オワコンと言われている理由や構築手順含めて解説します 【徹底解説】OpenStack,Kubernetes,OpenShiftの違いについて解説します

サーバ仮想化

Docker

コンテナ仮想化を用いてアプリケーションを開発・配置・実行するためのソフトウェア/プラットフォーム。OSレベルの仮想化により、アプリケーションを開発・実行環境から隔離し、アプリケーションの素早い提供を可能にする。

【入門編】Dockerとは何かを分かりやすく解説します | Docker HubやDocker Desktopも

KVM

KVM (Kernel-based Virtual Machine:カーネルベースの仮想マシン) は、Linuxに組み込まれたオープンソースの仮想化テクノロジーです。

具体的には、KVM を使用すると、Linux をハイパーバイザーに変貌させることができます。

これによりホストマシンは、ゲストや仮想マシン (VM) と呼ばれる複数の独立した仮想化環境を稼働させることができます。

Proxmox VE

オープンソースの仮想化プラットフォーム。KVMを用いた仮想マシン(VM)の作成・管理はもちろん、LXCを活用したコンテナ運用にも対応しています。商用ライセンスを必要としないため、初期コストを抑えつつ高機能な環境を構築できるのが特徴。

関連記事

Proxmox VEは何が出来るのかを解説します

Xen

コンピュータを仮想化し、複数のOSを並行して動作させられるようにする仮想化ソフトの一種。仮想化のオープンソースソフトウェアとしてのシェアは縮小傾向にあります。

ストレージ仮想化

Ceph

単一の分散コンピュータ・クラスター上でオブジェクトストレージを実装したフリーソフトウェアのストレージプラットフォーム。

オブジェクト、ブロック、ファイルレベルのストレージインタフェースを提供し、単一障害点がなく、エクサバイトレベルまで拡張可能な、フリーで利用できる完全な分散オペレーションを主な目的としている。

Gluster

スケーラブルなストレージのための汎用分散ファイルシステムの1つ。

InfiniBandのRDMAやTCP/IPなどのインターコネクトを使用して複数のホストに分散した各種ストレージを集約し、大規模並列ネットワークファイルシステムを構築できる。

KNIME

データ連携・統合・分析を行うことができるエンドツーエンドのデータ分析プラットフォーム。2000を超える分析モジュールが用意されており、専門知識がなくても高度な分析が可能になっている。読み方は「ナイム」。

サービスメッシュ

Open Service Mesh

Microsoft が中心となって開発しているオープンソースのサービスメッシュのこと。軽量かつシンプルな構成を特徴としており、Service Mesh Interface (SMI) と呼ばれる業界標準のインターフェイス仕様をサポートしています。OSM を利用すると、Kubernetes 上のマイクロサービス間通信を一元的に制御し、セキュリティ(mTLS など)、トラフィック制御、観測性向上を容易に行うことができます。

主な特長としては以下が挙げられます:

  • 軽量設計: 必要最低限の機能をシンプルに提供し、導入のハードルを下げる
  • SMI 準拠: ベンダーロックインを回避し、既存ツールや他のサービスメッシュとの互換性を高める
  • 拡張の容易さ: Kubernetes クラスタに容易に導入でき、既存のアプリケーションを大きく変更することなく利用可能
  • セキュリティ強化: mTLS やポリシー設定により、マイクロサービス間通信を安全に管理

CNCF(Cloud Native Computing Foundation)のサンドボックスプロジェクトとして進化を続けており、将来的なエンタープライズレベルでの利用にも対応できるようコミュニティで活発に開発が行われています。

オーケストレーション

Kubernetes

Kubernetes(クバネテス)は、コンテナ化されたアプリケーションを大規模に自動でデプロイ・スケール・管理するためのオープンソースソフトウェアです。Googleが開発し、現在はCNCF(Cloud Native Computing Foundation)でホストされています。Kubernetesを使うことで、複数のサーバー(ノード)を束ねてクラスタを作り、コンテナを効率よくスケジュールし、ネットワークやストレージ、セキュリティなどを統合的に管理できます。これにより、アプリケーションを継続的に稼働・拡張しやすくなり、インフラの複雑さを軽減することが可能になります。

関連記事

【徹底解説】OpenStack,Kubernetes,OpenShiftの違いについて解説します

コンテナランタイム

Docker

Docker は、コンテナ型の仮想化を実現するオープンソースソフトウェアおよびプラットフォームです。従来の仮想マシン(VM)と違い、ホスト OS を共有しつつアプリケーションや実行環境を“コンテナ”としてパッケージ化・隔離できるため、以下のメリットがあります。

  • 軽量かつ高速: コンテナごとに OS が不要なため、VM に比べて起動が速く、リソース消費量が少ない
  • ポータビリティ: コンテナとしてパッケージしたアプリケーションを、開発環境や本番環境など異なる環境に容易に移行可能
  • 一貫した環境: Docker イメージにアプリケーション実行に必要なライブラリや設定をすべて含めるため、「動く環境が違うと再現できない」という問題を軽減

Docker は、ソフトウェアの開発・デプロイ・運用を効率化するための重要なコンテナ技術のひとつとして、幅広く利用されています。

【入門編】Dockerとは何かを分かりやすく解説します | Docker HubやDocker Desktopも

Platform as a Service

OKD(旧称OpenShift Origin)

OKD(旧称 OpenShift Origin)は、Red Hat OpenShift のコミュニティ版(アップストリームプロジェクト)として提供されるオープンソースの Kubernetes ディストリビューションです。Kubernetes に加えて、以下のような追加機能やツールを含むことで、コンテナ化されたアプリケーションのビルド、デプロイ、スケーリングを容易にします。

  • ビルドとデプロイの自動化: ソースコードをビルドしてコンテナイメージを作成・配布するための仕組みを提供
  • 統合されたコンテナレジストリ: Kubernetes クラスタ内部でコンテナイメージを管理できる
  • 認証・認可などのセキュリティ機能: マルチテナント環境を安全に運用しやすい設計
  • Web コンソールや CLI ツール: クラスタ管理やアプリケーションデプロイを簡単に操作できるインターフェイス

OKD は、開発者向けに特化した機能が豊富なため、Kubernetes ベースの開発・運用基盤をよりスムーズに構築したい場合に役立ちます。また、Red Hat OpenShift の中核技術をいち早く試せる場としても利用されています。

開発支援

開発言語

Perl

パール。UNIXやWindowsなど多種のプラットフォームの上で動作するインプタリ方式のプログラミング言語。

PHP

コミュニティベースで開発されている汎用的プログラミング言語。サーバーサイドで動的なウェブページを作成する機能を多く備えている。

プロジェクト管理

Redmine

オープンソースのプロジェクト管理ソフト。スケジュール管理、課題管理、バグトラッキング、Wikiなど、プロジェクト管理に必要な機能が揃っている。タスクのことを“チケット”と呼び、一覧で管理できるのが特徴。

テストツール

Jenkins

CI/CDの代表的なツール。オープンソースの自動化サーバー。プラグインが豊富で拡張性に優れており、さまざまな開発言語や環境に適応できる柔軟性が特徴。

関連記事

Jenkinsについて分かりやすく解説します | Docker連携やPipeline機能も

Selenium

Webアプリケーションのテスト自動化を実現するブラウザ駆動型のソフトウェア。Webベース管理タスクの自動化に利用可能。

リポジトリ・バージョン管理

GitLab

Gitを使ったソースコードのバージョン管理を中心とし、課題管理やCI/CDなどプロジェクト開発を包括的に支援するプラットフォーム。GitHubと異なり、自社サーバやクラウド環境に独自にインストールして運用することも可能。

関連記事

【初学者向け】GitLabについて解説します

運用管理

運用監視

Nagios

サーバー内部にインストールされたNagios本体、またはリモートサーバー内のエージェントやSNMP情報を利用し、リソース使用量やプロセス稼働状態などの監視を行うシステム監視ソフトウェア。C言語で開発されており、LinuxもしくはUNIXで動作させることができる。

OpenNMS

エンタープライズレベルのネットワーク監視ツール。特徴は、ネットワークリソースの監視とは異なりWeb/DHCP/DNS、そしてデータベースアクセスなどのサービスを対象としていること。

Sensu

システム監視の自動化を目的としたフレームワーク製品で、Nagiosの問題点の改善を基本コンセプトとして開発されており、Nagiosとはプラグインなどで互換性を持っている。Rubyで作成されており、モニタリングツールとして大量のデータを監視処理できるように設計されている。

SyslogNG

オリジナルのsyslogdの機能はもちろんのこと、リッチなフィルタリング機能や柔軟な設定オプション、TCPでのログ転送など、さまざまな機能がサポートされている。

構成管理

Ansible

特徴
・エージェントレス構造:対象サーバーに特別なソフトウェア(エージェント)をインストールする必要がありません。Ansible自身はコントロールマシン(管理端末)上で動作し、SSHなどを介して対象サーバーに指示を出します。
・Playbookによる構成管理:インフラの設定手順をYAML形式のファイル(Playbook)で記述できます。手順が可読性の高いテキストベースで管理されるため、バージョン管理との相性も良く、再現性の高いデプロイを実現できます。
・プラグインやモジュールの拡張性:多数の公式モジュールが用意されており、OS設定やクラウドサービスの操作など様々なタスクを自動化できます。Pythonで独自モジュールを開発して拡張することも可能です。
・宣言的アプローチと冪等性:「最終的にこの状態になっていてほしい」という宣言を行うだけで、Ansibleがその状態に近づけるために必要な作業を実行してくれます。冪等性(べきとうせい)により、何度Playbookを実行しても同じ状態を保つことができます。
・軽量&シンプルな設計:エージェントレスであり、実行に必要な依存関係が比較的少ないため、初期セットアップが簡単です。他の構成管理ツールに比べ、学習コストが低めとされています。

関連記事

Ansibleとは何かを分かりやすく解説します

負荷分散

HA Proxy

ロードバランサーやリバースプロキシとして利用できる多機能プロキシサーバ。負荷分散においてはラウンドロビン方式だけでなく、様々な負荷分散アルゴリズムの定義が出来ます。

ネットワークモニタリング

Cacti

サーバーやネットワーク機器のリソース使用状況のグラフ化を、インストール後の基本設定のみで行うことができる。PHPで開発されており、PHPが動作するプラットフォームであればLinux以外の商用UNIX/Windows OSでも稼働させることが可能。収集・集計した監視データはApacheなどのHTTPサーバーを経由しブラウザーでアクセス。収集したデータはRDB(デフォルトはMySQL)に格納する。

RRDTool

時系列データ用の高性能な「データロギング」および「グラフ作成」ツール。「ネットワーク帯域幅」「温度」「CPU負荷」などのあらゆる種類のデータソースから収集した時系列データを処理することを目的としている。

Wireshark

ネットワークデータを分析、表示するプロトコルアナライザー。Windows、MacOS、Linuxなどで利用できるため、ネットワーク分析の定番ツールとなっている。

Zenoss

Pythonで実装されたシステム管理ソフトウェアで、WebベースのUIを備えているのが特徴。システムの可用性やパフォーマンス、イベント、設定などをWebブラウザから管理・監視できる。問題検出や問題の自動解決、障害管理、アラート、レポートなどの機能を持ち、プラグインによる拡張も可能。

ログ収集

Fluentd

特徴
One Data Pipeline”の思想による統合的なログ管理:Fluentdは、さまざまな種類のログ・イベントを一元的に収集・加工・転送する「One Data Pipeline」の考え方を採用しています。JSONフォーマットをコアに用いることで、形式の異なるデータを一つのパイプラインで扱いやすくしています。ログ管理ツールが乱立しがちな環境でも、Fluentdを導入することで単一のプラットフォーム上で管理できる点が大きな強みです。

豊富なプラグインと高い拡張性:Fluentd本体は軽量ですが、数百以上あるプラグインを使うことで、多様なデータソース(ファイル、クラウドサービス、IoTデバイスなど)や出力先(データベース、ビッグデータプラットフォーム、アナリティクスツールなど)に対応できます。プラグイン開発も容易で、独自の要件に合わせてカスタマイズしやすい点が差別化につながっています。

優れたバッファリング機能と高い信頼性:Fluentdは、ネットワーク障害や出力先の障害が発生しても、ログをバッファに保持して再送する仕組みを備えています。バッファ先もメモリだけでなくファイルシステム、クラウドストレージなどを選択でき、障害時のデータロスを最小化できます。大規模環境や大量データの取り扱いでも、高い可用性を保ちやすい設計が特徴です。

ファイルサーバー、メールサーバーなど

DNS・DHCP

BIND

世界で最も多く利用されているDNSサーバー。DNSサーバとリゾルバライブラリ、各種ツールの集合体。

FTPサーバー

FileZila

FileZillaは、多くの機能と使いやすいインターフェイスを特徴とするクロスプラットフォームなFTP、FTPS、SFTPのクライアント(FileZilla Client)と、Windows向けの高機能なFTPサーバ(FileZilla Server)です。

まとめ

以上紹介したOSSはあくまでもほんの一部である。この他にも多くのソフトウェアがあるため、『OSS鳥瞰図2024版』を参考に探してみて欲しい。

また、下記は次世代ビジネスがソフトウェア・ファーストに刷新されることを描いた良著である。読み物として面白いため、紹介しておく。

学習と実践でスキルアップしよう(お得に).   対象コースが¥1800から