7.4. インストールと展開¶
7.4.1. 概要¶
Ericom Shieldは、環境アーキテクチャと接続要件に応じて、さまざまな方法を使用してインストールできます。
インストール方法 | 説明 | 推奨 | 要件 |
---|---|---|---|
スクリプトによるオンラインインストール | 最新のShieldインフラストラクチャスクリプトとインストールファイルのリアルタイムダウンロード。 | 最新の安定したShieldバージョンを必要とするインターネット接続のある環境。 | Ubuntu Server18.04とインターネット接続 |
OVA /レジストリを介したオフラインインストール | ローカルレジストリからのShieldのインストール。 | インターネットに接続できない環境。 | Ubuntu Server18.04およびレジストリOVA。
注: レジストリサーバーは、Shieldサーバーにすることもできます。
|
高可用性の本番環境(推奨)の場合、マスター(クラスタ管理)マシンが3台必要です。
7.4.2. スクリプトによるオンラインインストール¶
推奨は、クラスタのデプロイと管理に使用する専用のLinuxマシンをセットアップすることです。このマシンは、Rancher Serverマシンと呼ばれます。このマシンには、すべての内部コンポーネント(KubectlやHelmなど)が含まれます。Rancher Serverは、別のマシンでも、マスターマシン(etcdとControl Planeを実行)の1つでもよい。システム内の他のすべてのノードは、デプロイメントタイプによって決まります。
ノードの準備¶
これらの要件に従って、希望する展開に応じた必要台数のマシンを準備します。Shieldシステム内のすべてのマシンが持っている必要があります。
- 固定IPアドレス
- 同じタイムゾーン(システム内の他のマシンと同じ)であること
- 一意のホスト名
以下の手順でマシンを準備します。
- DNSとネットワークの設定は、Ubuntuの勧告に従って行ってください(Name Resolutionで検索してください)。
- すべてのマシンを同期させる必要があります。マシンのNTP(Network Time Protocol)とタイムゾーンを設定する。
sudo timedatectl set-ntp on
sudo systemctl restart systemd-timesyncd
timedatectl set-timezone <Continent>/<City>
マシンの名前をユニークな名前に変更します(クラスタを正しく作成するために必要です)。rootで、実行します。
hostnamectl set-hostname <NewUniqueHostname>
/etc/hosts ファイルで新しいホスト名を更新します。不足している場合は、追加してください。
ShieldシステムにSSLインスペクションを使用するUpstream Proxyが含まれている場合、マシンに一致する証明書をインストールします。usr/local/share/ca-certificate/cert-1.crt に移動して、cert-1.crt というファイルを作成し、実行してください。
sudo update-ca-certificate
マシンを再起動する。
システム内の各マシンについて、この手順を繰り返します。
Rancherサーバーを準備する¶
注意
Shieldのオンラインリポジトリには、有効なパスワードが必要です。続行する前に、Ericom Shield プロフェッショナルサービスに連絡して、有効なパスワードを入手してください。
LinuxのRancher Serverマシンで、このコマンドをコピーして実行します。
curl -so install-shield.sh https://raw.githubusercontent.com/EricomSoftwareLtd/Shield/master/Kube/scripts/install-shield.sh
chmod +x install-shield.sh
sudo ./install-shield.sh -l -p <PASSWORD>
このコマンドは、Rancherをすべてのラベルで実行し(-l)、最新のShieldリポジトリを使用します。
スクリプトが正常に終了すると、このようなリンク画面が表示されます。

スクリプトが完全に完了しない場合は、install-shield.sh スクリプトを再度実行してください。
sudo ./install-shield.sh -l -p <PASSWORD>
サーバーノードの準備¶
複数ノードのシステムを展開する場合、Shieldクラスタに参加する各サーバーノードは、クラスタを作成する前に準備する必要があります。Linux Rancher Serverマシンから実行します。
./shield-prepare-servers [-u <USER>] <ServerIPAddress(s)>
ユーザーは全ノードに存在するユーザで置き換えてください.ServerIPAddress(s)をシステムノードのIPアドレスのリスト(ServerIPAddress(s)を含む)で置き換えます. IPアドレスは、スペース(」 「)で区切って複数入力することができます。
例)
./shield-prepare-servers -u ericom xx.xx.xx.xx yy.yy.yy.yy
Shieldを展開する¶
Shieldの展開(続き)の手順を実行します。
7.4.3. OVA /レジストリを介したオフラインインストール¶
Shield OVA / Registryは、サーバーにShieldをインストールするため、およびインターネット接続がない場合に必要なすべてのサービスのコレクションです。
注意
Shield OVA / Registryは、準備された他のUbuntuサーバーにShieldをインストールするために使用することも、Shieldサーバー自体として使用することもできます。
準備されたUbuntuサーバーにShieldをインストールする場合、Shieldレジストリ自体(レジストリVMと呼ばれる)専用の単一のマシンが必要です。この特定のマシンの要件は次のとおりです。
- 最小:1コア / 2GBメモリ
- おすすめされた:2コア / 4GBメモリ
Shieldシステムを計画するときは、クラスターの展開と管理に使用される専用のLinuxマシンをセットアップすることをお勧めします。このマシンは、RancherServerマシンと呼ばれます。このマシンには、すべての内部コンポーネント(Kubectl&Helmなど)が含まれます。ランチャーサーバーは、別のマシンにすることも、マスターマシンの1つ(etcdとコントロールプレーンを実行する)に置くこともできます。システム内の他のすべてのノードは、デプロイメントタイプによって決定されます。
このウィジェットには以下のデータが含まれます:
- システムの一部となるすべてのノードを準備します
- ShieldレジストリVMを作成します
- ランチャーサーバーを作成する
- 他のノードをクラスターに追加します。
ノードの準備¶
Shieldシステムのすべてのマシンには、次のものが必要です。
- 固定IPアドレス
- 一意のホスト名
- 同じタイムゾーン(システム内の他のマシンと同じ)
次の手順に従って、マシンを準備します。
ericom / ericomshieldを使用してログインします。マシンのIPを一意で静的になるように構成します。
/etc/systemd/network に移動し、20-wired.networkファイルを編集します。 DHCP = ipv4の行を変更して、特定のIPアドレス/サブネットを参照します。次に例を示します。
[マッチ]
名前= en *
[通信網]
アドレス= 10.1.10.12 / 24
ゲートウェイ= 10.1.10.1
DNS = 10.1.10.1
#オプション、倍数を使用できます
#DNS = 10.1.10.2
IPForward = ipv4
注意
DHCPサーバーが環境に存在する場合は、予約済み(静的)IPをレジストリVMにリースするように構成します。最初の起動時にレジストリVMに指定されたIPアドレスによってノードのMACアドレスを判別できるはずです。
すべてのマシンを同期する必要があります。マシンのNTP(ネットワークタイムプロトコル)とタイムゾーンを構成します。
sudo timedatectl set-ntp on
sudo systemctl restart systemd-timesyncd
timedatectl set-timezone <Continent> / <City>
マシンの名前を一意の名前に変更します(クラスターを正しく作成するために必要です)。ルートとして、次を実行します。
hostnamectl set-hostname <NewUniqueHostname>
/etc/hosts ファイルの新しいホスト名を更新します。欠落している場合は追加します。
ShieldシステムにSSL検査を使用するアップストリームプロキシが含まれる場合は、一致する証明書をマシンにインストールする必要があります。これを行うには、/usr/local/share/ca-certificate/cert-1.crt の下にファイル cert-1.crt を作成し、次のコマンドを実行します。
sudoupdate-ca-certificate
マシンを再起動します
システム内のマシンごとにこれらの手順を繰り返します。
必要に応じて、OSのサイズを増やします(VMwareのサイズと一致するように)。以下を実行します:
growpart /dev/sda1
resize2fs /dev/sda1
ShieldレジストリVMを準備します¶
Shield Registryをダウンロードし、VMを起動します。
https://shield-ova.s3.amazonaws.com/shield-kube-Rel-21.07.780.1.ova
ダウンロードしたファイルには、バージョン名が含まれています。それを保管してください。
さらに、このVMのIPアドレス(RegistryIPAddressと呼ばれる)を保持します。インストールプロセス中に両方の詳細が必要になります。
注意
レジストリVMは常に稼働している必要があります。Dockerオフラインレジストリはポート5000でアクセスできます
サーバーノードを準備する¶
注意
OVA /レジストリサーバーをShieldサーバー自体として使用する場合は、この手順をスキップできます。
Shieldクラスターに参加する各サーバーノードは、クラスターを作成する前に準備する必要があります。レジストリVMにログインして、以下を実行します。
./shield-prepare-servers -u <USER> --offline-mode --offline-registry <RegistryIPAddress:5000> <ServerIPAddress(s)>
USERを、すべてのノードに一致するユーザーに置き換えます。ServerIPAddress(s)を、システム内のすべてのノードのIPアドレスのリストに置き換えます。 スペース( 「」)で区切って、複数のIPアドレスを入力できます。
- 例:
./shield-prepare-servers -u ericom --offline-mode --offline-registry vv.vv.vv.vv:5000 xx.xx.xx.xx yy.yy.yy.yy zz.zz.zz.zz
ランチャーサーバーを準備する¶
システム内のノードの1つにログインします。このノードはRancherサーバーになります。
レジストリVMから次のファイルを取得します(RegistryIPAddressを実際のIPに置き換えてください。ポート85が使用されていることに注意してください):
curl -s -o install-shield.sh http://<RegistryIPAddress>:85/ericomshield/install-shield.sh
chmod x install-shield.sh
sudo ./install-shield.sh -l -p <PASSWORD> -v <version-name> --registry <RegistryIPAddress:5000>
バージョン名の形式は次のとおりです。Rel-yy.mm.xxx(例:Rel-21.01.734)。 Shield Registryファイル(以前にダウンロードされたファイル)に記載されているバージョン名を使用します。
Shield を展開する¶
Shieldの展開(続き)の手順を実行します。
7.4.4. Shieldの展開(続き)¶
サーバーノードをクラスターマスターに接続する¶
Rancherを https://RancherServerIPAddress:8443 (Rancher ServerのIPアドレスを使用)開きます。
デフォルトのパスワードadminとericomshieldでログインします。
注意
スクリプトインストールを使用する場合、スクリプトが完了してから5~10分待ってからRancherのURLに移動してください。
クラスタに移動し、[編集]を選択します

ページの一番下までスクロールし、必要なチェックボックスをマークして(計画された展開に従って)、一番下のコマンドをコピーします(右側の[クリップボードにコピー]オプションを使用)。

コピーしたコマンドを各サーバーノードで実行し(SSH経由)、クラスターに参加させます。コピーしたコマンドが、参加するノード(Master/Worker)と一致していることを確認してください。クラスタメニューの[ノード]をクリックして、ノードの参加に従います。

クラスターが更新を開始します。

プロセスが終了するまで待ちます。ノードがクラスターに参加すると、ページの下部に緑色のメッセージが表示されます。クラスタが完了するまで、ノードごとにこのプロセスを繰り返します。
- ノードラベルの設定
計画されている展開に従って、各マシンのノードラベルを設定します。
ランチャーで、[ノード]を選択し、編集するノードごとに、右側のメニューから[編集]オプションを選択します。

[ノードの編集]ダイアログで、[ラベルと注釈]セクションを展開し、目的のラベルをノードに追加します。ラベルごとに、値acceptを設定します。可能なラベルは次のとおりです。

ラベルは、手動で1つずつ追加することも、次のラベルの1つ以上の行にコピー/貼り付けを使用して追加することもできます。
shield-role/management=accept
shield-role/proxy=accept
shield-role/elk=accept
shield-role/farm-services=accept
shield-role/remote-browsers=accept
保存を押します。更新されたラベルがノードの詳細に表示されます。

この時点で、Rancherに組み込まれているクラスター監視ツールであるPrometheusとGrafanaを有効にすることをお勧めします。
監視ツールを有効にするには、[クラスター] | [クラスター]に移動します。ツール|モニタリング:

下にスクロールして有効にします。
注意
クラスタ監視ツールはいくつかのリソースを消費します。クラスタレベルで十分なリソースがある場合は、これらのツールを強くお勧めします。ただし、Shieldシステムの機能には必須ではありません。
システムを再起動して、追加されたノードと定義されたラベルを適用します
sudo ./stop.sh
sudo ./start.sh
これで、新しいクラスターの準備が整いました。
システムステータスの確認¶
ランチャーで、[ワークロード]でシステムが稼働しているかどうかを確認します。詳細については、クイックガイド|をご覧ください。Shieldステータスの確認方法セクション。
スプリットモード¶
システムをスプリットモードで展開するには、クイックガイド|で必要な構成を参照してください。Shieldをスプリットモードでデプロイします。