オープンソース

Rancher〜Kubernetesの管理ソフトウェア〜

仮想環境を実装するソフトウェアとしてDockerがあります。そのDockerを複数組み合わせたシステムを管理するためのツールとしてKubernetesがありますが、使いこなすには専門的な知識が必要でした。そんなKubernetesを管理しやすくするソフトウェアとしてRancherが開発されました。ここでは、Kubernetesの管理ソフトウェアのRancherについて紹介します。

Rancherとは

Rancherとは、日本語で「牧場主」を意味する単語で、コンテナ管理の利便性を向上させることができるプラットフォームのオープンソースソフトウェアです。オープンソースのためソースコードはGitHubに掲載されています。アメリカのRancher Labsが開発し提供しています。ライセンスはApache License version 2、開発言語はGo、Node.Jsで公開されています。Rancherとは別にRancherOSというOSも存在します。Rancherは、Webブラウザから接続が可能で、ログインすると以下の画面が表示されます。

ログイン画面

Rancherログイン画面

Kubernetesの運用や連携

そのコンテナを操作や管理をするツールとしてKubernetes(k8s)というソフトウェアがあります。しかし、Kubernetesは、導入が難しい点や学習・管理コストが高いという欠点があります。つまりKubernetesは、専門知識のある技術者じゃなければ理解や使いこなすことができませんでした。そこで、技術をもたない人でも使用できるKubernetes環境の管理をするRancherが登場しました。

Rancherの特徴

Rancherには、以下の特徴があります。

WebブラウザでKubernetesの管理ができる

今まで、Kubernetesはコマンド上でコンテナの管理をしていました。しかし、Rancherを利用することで、手間であったコマンド上での管理がブラウザから操作可能になります。また、様々なKubernetesの機能を使おうとすると、大量のマニフェストを作成する必要がありますが、作成の必要がなくなり管理が楽になります。

Kubernetsクラスタの構築・管理を簡単に行うことができる

Rancherは、「Kubernetes is Everywhere」をコンセプトにしており、オンプレミス環境やクラウドサービス上にKubernetesクラスタを構築・管理することができます。また、マルチクラウドをベースとしたKubernetesクラスタにも対応しています。オールインワンのKubernetesホストの構築ではなく、コントロールプレーンのクラスタリングなども含めて、柔軟に対応することが可能です。

Kubernetesのバージョン指定やCNIプラグインの選択など、Kubernetesクラスタ構築時のオプションを指定することができます。また既存のKubernetesクラスタをインポートして、Kubernetesクラスタの追加・削除・変更などをRancherで管理することも可能になります。

Web UIからKubernetesクラスタのアップデートができる

Rancherは、Kubernetesのアップストリームにしたがって、新しいバージョンのKubernetesをサポートしています。そして既存のKubernetesクラスタのアップデートもRancherのWebUIから行うことができます。Rancherは、Rancherプロジェクトで一定の動作検証が行われてから採用されているため、最新のKubernetesのバグを踏む、CNIプラグインが動かなくなるなどのリスクを低減することができます。

Rancherの機能

Rancherには、以下の機能があります。

Kubernetesクラスタの構築・アップデート

新しいバージョンのKubernetesを選択し適用すると、自動的にアップデートが開始されます。スナップショットを取っておくことで、アップデート後に問題が発生した場合に、元のバージョンに戻すことができます。

クラスターオプション

PodやDeployment等のKubernetesリソースの管理

Rancherを使うと、PodやDeployment等の作成もWEBインターフェースから行えるようになります。RancherではKubernetesのPodやDeploymentなどのリソースを総称して、ワークロードといいます。

ワークロードをデプロイ

永続ストレージの管理

Rancherでは、永続ボリュームの管理もWEB UIから行うことができます。ストレージとして利用できるのは次のタイプです。

  • Amazon EBS
  • Azureディスク
  • Azureファイルシステム
  • Google永続ディスク
  • Long horn
  • NFS共有
  • VMWareVsphreボリューム
  • ローカルノードディスク
  • ローカルノードパス

Helmを利用したアプリケーションのデプロイ

Helmとは、Kubernetes用のパッケージマネージャのことをいいます。パッケージマネージャは、ソフトウェアバイナリや実行スクリプトなどのパッケージを管理するツールです。パッケージマネージャとパッケージを利用することで、システムに簡単にソフトウェアをインストールできたり、管理がしやすくなります。Rancherでは、カタログという項目からHelmを用いてアプリケーションを簡単にインストールすることが可能になります。Linux系のディストリビューションではRPMやDEBなどのパッケージマネージャが存在しています。Grafanaなどのソフトウェアも簡単にアクセスすることが可能になります。

カタログ

Kubernetesクラスタのスナップショット・リストア

Rancherは、Kubernetesクラスタのスナップショットを取得することができます。スナップショットは、Kubernetesクラスタの一覧から確認することが可能です。取得したスナップショットは、リストアすることもできます。

クラスター

ユーザと権限の管理

Rancherのユーザは、グローバルスコープから登録することができます。登録したユーザは、各クラスタやクラスタ配下のプロジェクトのメンバーにすることができます。ユーザは登録されたクラスタやプロジェクトに対して、許可された権限の範囲内での操作が可能になります。

ユーザを追加

デージーネットの取り組み

デージーネットでは、Rancherを含むKubernetes環境のシステム構築および保守サポートを行っています。また、Rancherの仕組みやインストール方法、ロードバランサの設定などより詳しい詳細な情報をRancher調査報告書に掲載しています。

「情報の一覧」

Rancher調査報告書

無料資料ダウンロード

Rancherは、Kubernetes環境の管理をするためのソフトウェアです。Kubernetesリソースの管理をWEBインターフェースから行うことができます。本書は、Rancherについての調査報告書です。

メールマガジン記事 2020 年4月号「Rancher〜Kubernetesの管理ツール〜」

メールマガジン2020年4月

Kubernetesは、コンテナのオーケストレーションツールとして、デファクトスタンダードの地位を確立しています。しかし、一方で導入が難しい、学習・管理コストが高いという難点があります。今回はKubernetesの管理ツール「Rancher」をご紹介します。

デモのお申込み

もっと使い方が知りたい方へ
操作方法や操作性をデモにてご確認いただけます。使い方のイメージを把握したい、使えるか判断したい場合にご活用下さい。デモをご希望の方は、下記よりお申込みいただけます。


デモをご希望の方

デモの申し込みイメージ

OSS情報「Kubernetes」

Kubernetes〜コンテナ管理ツール〜
ここでは、Dockerコンテナの管理を自動化するためのソフトウェア「Kubernetes」を紹介します。
Kubernetesクラスタの構築
ここでは、CentOS7に最小限のKubernetesクラスタを構築する方法について説明いたします。
KubernetesのPod機能
ここではPod機能について説明いたします。
Kubernetesのレプリカセットとデプロイメント
ここではデプロイメントという機能を利用してレプリカセットを作成する方法について説明いたします。
Kubernetesのアーキテクチャ
ここではアーキテクチャについて説明いたします。
Kubernetesのコンテナアップデート
ここでは、Kubernetesでソフトウェアをアップデートする場合の手法について説明いたします。
Kubernetesのローリングアップデート
ここでは、Kubernetesのローリングアップデート機能の概要について説明いたします。
Kubernetesのダッシュボード
ここでは管理用のダッシュボードについて説明いたします。
Kubernetesの永続ストレージ
ここでは永続ストレージについて説明いたします。
Rancher
〜Kubernetesの管理ソフトウェア〜
ここでは、Kubernetesの管理ソフトウェアのRancherについて紹介します。
GitLab〜Dockerのプロジェクト管理とレジストリ〜
GitLabは、ウェブ型のGitリポジトリマネージャーです。ここではGitLabのコンテナレジストリについて説明いたします。
DRBD-SDSとKubernetes
ここではDRBD-SDSを利用することでサービスの冗長化を実現させる手法について説明いたします。
Falco
〜コンテナの侵入・改ざん検知ツール〜
ここではKubernetesを代表するコンテナ環境をターゲットにしているコンテナランタイムセキュリティソフトウェアのFalcoについて説明いたします。
Trivy
〜コンテナイメージの脆弱性診断ツール〜
Trivyは、コンテナイメージの脆弱性診断ツールです。ここではTrivyの機能や特徴などについて説明いたします。

Rancher〜Kubernetesの管理ソフトウェア〜の先頭へ