インストールと展開¶
警告
この方法は、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 ファイルでのインストール¶
サーバー マシンの作成¶
- VMware vSphereクライアントから、
File > Deploy From OVF Template
を選択します。
OVA ファイルの場所を参照して選択します。 Next
をクリックしてください。
- ファイル名、ストレージ・パスを選択します。すべてのステップを完了し、
Finish
をクリックします。
- マシンの準備が整うまで待ちます。
- マシンの設定を入力し、CPUを8コア(最小)または12コア(推奨)に、メモリを16GB(最小)に変更します。
- マシンを起動します。
マシンの準備 で記載されている手順に従ってください。
必要に応じて、OS のサイズを大きくします (VMware のサイズに合わせて)。実行::
growpart /dev/sda1 resize2fs /dev/sda1
インストールスクリプトを使用した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
を選択してください。
ページの一番下までスクロールして、必要なチェックボックスにマークを付けて(計画されている展開に応じて)、一番下のコマンドをコピーします(右側の クリップボードにコピー オプションを使用)。
コピーしたコマンドを 各 サーバーノード上で実行して、クラスタに参加させます。コピーしたコマンドが参加するノード( Master / Worker )と一致していることを確認してください。クラスタメニューの Nodes
をクリックして、ノードの結合を行います。
処理が終了するまで待ちます。ノードがクラスタに参加すると、ページの下部に緑色のメッセージが表示されます。クラスタが完了するまで、各ノードごとにこの処理を繰り返します。
ノード ラベルの設定¶
計画された展開に応じて、各マシンのノードラベルを設定します。
Rancherで Nodes
を選択し、編集するノードごとに右側のメニューから Edit
オプションを選択します。
Edit Node
ダイアログで、 Labels & Annotations
セクションを展開し、目的のラベルをノードに追加します。ラベルごとに、 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
Save
を押します。更新されたラベルがノードの詳細に表示されます。
システムを再起動して、追加されたノードと定義されたラベルを適用します。
sudo ./stop.sh
sudo ./start.sh
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アドレス
- 一意のホスト名
- 同じタイムゾーン(システム内の他のマシンと同じ)
マシンを準備するには、次の手順に従ってください。
次の資格情報を使用してログインしてください: ericom/ericomshield
マシンの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アドレスを特定できるはずです。
すべてのマシンを同期させる必要があります。NTP (ネットワークタイムプロトコル)とマシンのタイムゾーンを設定します。
sudo timedatectl set-ntp on sudo systemctl restart systemd-timesyncd timedatectl set-timezone <Continent>/<City>
マシンの名前を 一意 の名前で変更します (クラスタを正しく作成するために必要です)。**root**として実行します。
hostnamectl set-hostname <NewUniqueHostname>
/etc/hosts
ファイルの中の新しいホスト名を更新してください。見つからない場合は追加してください。Shieldシステムに SSL検査を使用するアップストリームプロキシ が含まれている場合は、一致する証明書をマシンにインストールする必要があります。これを行うには、
/usr/local/share/ca-certificate
の下に証明書を設置して、次のように実行します。sudo update-ca-certificates
マシンを再起動します
システム内の 各 マシンに対して、次の手順を繰り返します。
サーバーノードの準備¶
クラスターを作成する前に、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
を選択してください。
ページの一番下までスクロールして、必要なチェックボックスにマークを付けて(計画されている展開に応じて)、一番下のコマンドをコピーします(右側の クリップボードにコピー オプションを使用)。
コピーしたコマンドを 各 サーバーノード上で実行して、クラスタに参加させます。コピーしたコマンドが参加するノード( Master / Worker )と一致していることを確認してください。クラスタメニューの Nodes
をクリックして、ノードの結合を行います。
処理が終了するまで待ちます。ノードがクラスタに参加すると、ページの下部に緑色のメッセージが表示されます。クラスタが完了するまで、各ノードごとにこの処理を繰り返します。
ノード ラベルの設定¶
計画された展開に応じて、各マシンのノードラベルを設定します。
Rancherで Nodes
を選択し、編集するノードごとに右側のメニューから Edit
オプションを選択します。
Edit Node
ダイアログで、 Labels & Annotations
セクションを展開し、目的のラベルをノードに追加します。ラベルごとに、 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
Save
を押します。更新されたラベルがノードの詳細に表示されます。
システムを再起動して、追加されたノードと定義されたラベルを適用します。
sudo ./stop.sh
sudo ./start.sh
NFS上でのELKの実行(オプション)¶
ELKはローカルで実行されます(デフォルト)。ELKはローカルではなく、共有の NFS フォルダ上で実行することを 強くお勧め します。そのためには ericomshield
フォルダの下にある custom-values-elk.yaml
ファイルを編集してください。 elasticsearchDataPath を共有NFSフォルダへのパスで更新してください。また、elasticsearchSnapshotPath の更新も検討してください。
install-shieldサービスを再度実行します。
sudo ./install-shield.sh -p <PASSWORD>