インストールと展開

警告

この方法は、Ericom社がワールドワイドでリリースしている最新バージョンを導入するための手順です。参考としてそのまま記載を残しています。日本では独自にサポート可能なバージョンを限定してリリースしています。そのため、shield-setup.sh および shield-update.sh によって導入可能なものだけがサポート対象です。下記のドキュメントについては、サポート対象外ですご了承ください。

Ericom Shield は、環境のアーキテクチャと接続要件に応じて、さまざまな方法でインストールできます。

Shieldコンポーネントは、Rancherを使用してLinuxマシンに展開されます。Rancher は、本番環境での Docker および Kubernetes 製品を簡単に展開および管理できる、よく知られたソフトウェアプラットフォームです。

OVA

  • OVAには、基本オペレーティングシステム、必要なサービス、およびすべてのShieldインストールファイルが含まれています。
  • 容易なサーバーのセットアップおよび、インターネット接続が ない 環境向け
  • VMware環境にインストールされたOVAが必要。

Scripts

  • 最新のShieldインフラストラクチャスクリプトとインストールファイルのリアルタイムダウンロード。
  • 最新の安定したシールドバージョンを必要とするインターネット接続のある環境向け
  • Ubuntu Server 18.04とインターネット接続が必要。

Registry

  • ローカル レジストリからのShieldインフラストラクチャスクリプトとインストールファイルのインストール。
  • 物理 サーバーを使用するインターネット接続が ない 環境向け。
  • Ubuntu Server 18.04およびVMware環境にインストールされたレジストリOVAが必要。

高可用性の導入(推奨)には、マスター(クラスタ管理)マシンが3台必要です。詳細については、 こちら をご覧ください。

OVA ファイルでのインストール

サーバー マシンの作成

  1. VMware vSphereクライアントから、File > Deploy From OVF Template を選択します。
../_images/ova16.png

OVA ファイルの場所を参照して選択します。 Next をクリックしてください。

../_images/ova26.png
../_images/ova36.png
  1. ファイル名、ストレージ・パスを選択します。すべてのステップを完了し、 Finish をクリックします。
../_images/ova46.png
../_images/ova56.png
  1. マシンの準備が整うまで待ちます。
../_images/ova66.png
  1. マシンの設定を入力し、CPUを8コア(最小)または12コア(推奨)に、メモリを16GB(最小)に変更します。
../_images/ova76.png
  1. マシンを起動します。
../_images/ova86.png
  1. マシンの準備 で記載されている手順に従ってください。

  2. 必要に応じて、OS のサイズを大きくします (VMware のサイズに合わせて)。実行::

    growpart /dev/sda1
    resize2fs /dev/sda1
    

Rancherサーバーの準備

参考

Shieldリポジトリには有効な パスワード が必要です。有効なパスワードを取得するには、サポートセンターにお問い合わせください。

Linux Rancher Server マシンで、このサービスを実行します。

sudo ./install-shield.sh -R -l -p <PASSWORD>

このコマンドは、Rancher (-R) をすべてのラベル (-l) で実行し、最新の (オンラインの) Shield リポジトリを使用します。

これですべてのサーバーマシンの準備ができたので、インストールの手順を続けます。こちら を参照してください。

インストールスクリプトを使用したShieldのオンラインインストール

クラスタの展開と管理に使用する専用のLinuxマシンをセットアップすることをお勧めします。 このマシンは Rancher Server マシンと呼ばれます。 このマシンには、すべての内部コンポーネントが含まれます。(例:Kubectl&Helm) Rancher Server は、別のマシンにすることも、マスターマシン(etcdおよびControl Planeを実行する)の1つに置くこともできます。 システム内の他のすべてのノードは、展開タイプによって決定されます。

始める前に、マシンの準備 に記載されている手順に従ってください。

Rancherサーバーの準備

参考

Shieldリポジトリには有効な パスワード が必要です。有効なパスワードを取得するには、サポートセンターにお問い合わせください。

Linux Rancher Server マシンで、このサービスをダウンロードして実行します。

curl -s -o 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 (-R) をすべてのラベル (-l) で実行し、最新の (オンラインの) Shield リポジトリを使用します。

サーバーノードの準備

Shieldクラスターに参加する各サーバーノードは、クラスターを作成する前に準備する必要があります。 Linux Rancher Server マシンから実行:

./shield-prepare-servers [-u <USER>] <ServerIPAddress(s)>

USER をすべてのノードに一致するユーザーに置き換えます。 ServerIPAddress(s) をシステムノードのIPアドレスのリストに置き換えます。 複数のIPアドレスをスペース(" ")で区切って入力できます。

例:

./shield-prepare-servers -u ericom xx.xx.xx.xx yy.yy.yy.yy

参考

カーネルは、このプロセス中に更新される可能性があります (必要な場合)。

すべてのマシンを同期させる必要があります。クラスタ内のすべてのマシンで、NTP (Network Time Protocol) とマシン上のタイムゾーンを設定します。

サーバーノードをクラスタマスターに接続する

https://RancherServerIPAddress:8443でRancherを開きます (RancherサーバーのIPアドレスを使用)。

クラスターに移動して Edit を選択してください。

../_images/rancher113.png

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

../_images/rancher213.png

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

処理が終了するまで待ちます。ノードがクラスタに参加すると、ページの下部に緑色のメッセージが表示されます。クラスタが完了するまで、各ノードごとにこの処理を繰り返します。

ノード ラベルの設定

計画された展開に応じて、各マシンのノードラベルを設定します。

Rancherで Nodes を選択し、編集するノードごとに右側のメニューから Edit オプションを選択します。

../_images/rancher313.png

Edit Node ダイアログで、 Labels & Annotations セクションを展開し、目的のラベルをノードに追加します。ラベルごとに、 accept という値を設定します。可能なラベルは次のとおりです。

../_images/rancher413.png

ラベルは、手動で 1つずつ追加することも、次のラベルの 1 行以上のコピー/貼り付けを使用することもできます。

shield-role/management=accept
shield-role/proxy=accept
shield-role/elk=accept
shield-role/farm-services=accept
shield-role/remote-browsers=accept

Save を押します。更新されたラベルがノードの詳細に表示されます。

../_images/rancher56.png

システムを再起動して、追加されたノードと定義されたラベルを適用します。

sudo ./stop.sh
sudo ./start.sh

システムステータスの確認

Rancherで、システムが稼働中かどうかを Workloads で確認します。 詳細については、 `こちら <FAQ/status.html>`_をご覧ください。

NFS上でのELKの実行(オプション)

ELKはローカルで実行されます(デフォルト)。ELKはローカルではなく、共有の NFS フォルダ上で実行することを 強くお勧め します。そのためには ericomshield フォルダの下にある custom-values-elk.yaml ファイルを編集してください。 elasticsearchDataPath を共有NFSフォルダへのパスで更新してください。また、elasticsearchSnapshotPath の更新も検討してください。

install-shieldサービスを再度実行します。

sudo ./install-shield.sh -p <PASSWORD>

バックアップ

バックアップパスとストレージアカウントを設定します。詳しくは、こちら を参照してください。

スプリットモード

スプリットモードで展開されている場合、必要な設定は こちら を参照してください。

Shield Registry経由のオフラインインストール

Shield Registryは、物理 マシンにShieldをインストールするために、インターネット接続がない場合に必要なすべてのサービスのダウンロード可能なコレクションです。 この方法により、インストールを開始する前に、必要なすべてのスクリプトがローカルに存在することが保証されます。 環境が準備されると、インストールプロセスが短くなり、問題が発生しにくくなります。

Shield Registryを使用してインストールする場合、Shield Registry自体に1つの専用マシンが必要です( Registry VM と呼ばれます)。 この特定のマシンの要件は次のとおりです。

  • 最小: 1 コア/2GB メモリ
  • 推奨: 2 コア/ 4GB メモリ

Shield システムを計画する場合、クラスターの展開と管理に使用する専用のLinuxマシンをセットアップすることをお勧めします。 このマシンは Rancher Server マシンと呼ばれます。 このマシンには、すべての内部コンポーネントが含まれます。(例:Kubectl&Helm) Rancher Server は、別のマシンにすることも、マスターマシン(etcdおよびControl Planeを実行する)の1つに置くこともできます。 システム内の他のすべてのノードは、展開タイプによって決定されます。

プロセスには次のステップが含まれます。

  • システムの一部となるすべてのノードを準備します(VMを含まない別のマシン上)
  • オフライン Shield Registry VMを作成する
  • Rancherサーバーの作成
  • 他のすべてのノードをクラスターに追加します。

ノードの準備

要件 に記載されているように、Shieldシステムのすべてのマシンには次のものが必要です。

  • 固定IPアドレス
  • 一意のホスト名
  • 同じタイムゾーン(システム内の他のマシンと同じ)

マシンを準備するには、次の手順に従ってください。

  1. 次の資格情報を使用してログインしてください: ericom/ericomshield

  2. マシンのIPアドレスを スタティック IPに設定します。

    • /etc/systemd/network に移動します。

    • 20-wired.networkファイルを編集します。 スタティックIPアドレス/サブネットを使用するように、DHCP=ipv4 の行を変更します。例:

      [Match]
      Name=en*
      
      [Network]
      Address=10.1.10.12/24
      Gateway=10.1.10.1
      DNS=10.1.10.1
      DNS=10.1.10.2   //optional, multiples may be used
      IPForward=ipv4
      

参考

DHCPサーバーが環境内に存在する場合は、予約済み(静的)IPをOVAにリースするように構成します。 最初の起動時に、OVAに与えられたIPアドレスによってOVAのMACアドレスを特定できるはずです。

  1. すべてのマシンを同期させる必要があります。NTP (ネットワークタイムプロトコル)とマシンのタイムゾーンを設定します。

    sudo timedatectl set-ntp on
    sudo systemctl restart systemd-timesyncd
    timedatectl set-timezone <Continent>/<City>
    
  2. マシンの名前を 一意 の名前で変更します (クラスタを正しく作成するために必要です)。**root**として実行します。

    hostnamectl set-hostname <NewUniqueHostname>
    
  3. /etc/hosts ファイルの中の新しいホスト名を更新してください。見つからない場合は追加してください。

  4. Shieldシステムに SSL検査を使用するアップストリームプロキシ が含まれている場合は、一致する証明書をマシンにインストールする必要があります。これを行うには、/usr/local/share/ca-certificate の下に証明書を設置して、次のように実行します。

    sudo update-ca-certificates
    
  5. マシンを再起動します

システム内の マシンに対して、次の手順を繰り返します。

サーバーノードの準備

クラスターを作成する前に、Shieldクラスターに参加する各サーバーノードを準備する必要があります。 Registry 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)

Rancherサーバーの準備

システム内のいずれかのノードにログインします。 このノードは Rancher Server になります。

Registry VMから次のファイルを取得します( RegistryIPAddress を実際のIPに置き換えてください)。

curl -s -o install-shield.sh http://<RegistryIPAddress>/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-20.03.641)です。 Shield Registry ファイル(以前にダウンロードしたファイル)に記載されている バージョン名 を使用します。

サーバーノードをクラスタマスターに接続する

https://RancherServerIPAddress:8443でRancherを開きます (RancherサーバーのIPアドレスを使用)。

クラスターに移動して Edit を選択してください。

../_images/rancher113.png

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

../_images/rancher213.png

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

処理が終了するまで待ちます。ノードがクラスタに参加すると、ページの下部に緑色のメッセージが表示されます。クラスタが完了するまで、各ノードごとにこの処理を繰り返します。

ノード ラベルの設定

計画された展開に応じて、各マシンのノードラベルを設定します。

Rancherで Nodes を選択し、編集するノードごとに右側のメニューから Edit オプションを選択します。

../_images/rancher313.png

Edit Node ダイアログで、 Labels & Annotations セクションを展開し、目的のラベルをノードに追加します。ラベルごとに、 accept という値を設定します。可能なラベルは次のとおりです。

../_images/rancher413.png

ラベルは、手動で 1つずつ追加することも、次のラベルの 1 行以上のコピー/貼り付けを使用することもできます。

shield-role/management=accept
shield-role/proxy=accept
shield-role/elk=accept
shield-role/farm-services=accept
shield-role/remote-browsers=accept

Save を押します。更新されたラベルがノードの詳細に表示されます。

../_images/rancher56.png

システムを再起動して、追加されたノードと定義されたラベルを適用します。

sudo ./stop.sh
sudo ./start.sh

システムステータスの確認

Rancherで、システムが稼働中かどうかを Workloads で確認します。 詳細については、 `こちら <FAQ/status.html>`_をご覧ください。

NFS上でのELKの実行(オプション)

ELKはローカルで実行されます(デフォルト)。ELKはローカルではなく、共有の NFS フォルダ上で実行することを 強くお勧め します。そのためには ericomshield フォルダの下にある custom-values-elk.yaml ファイルを編集してください。 elasticsearchDataPath を共有NFSフォルダへのパスで更新してください。また、elasticsearchSnapshotPath の更新も検討してください。

install-shieldサービスを再度実行します。

sudo ./install-shield.sh -p <PASSWORD>

バックアップ

バックアップパスとストレージアカウントを設定します。詳しくは、こちら を参照してください。

スプリットモード

スプリットモードで展開されている場合、必要な設定は こちら を参照してください。