Blog Brocade Japan

オフライン・システムへのStackStormのインストール

by siddkris on ‎05-18-2017 08:40 AM - last edited on ‎05-18-2017 06:02 PM by aokuhara (4,001 Views)

--- StackStorm Blog 翻訳記事「Installing StackStorm on Offline Systems」 Siddharth Krishna ---

 

インターネットにアクセスしていないマシンにStackStormをインストールしたいですか。パブリック・ネットワークに接続しているローカル・ネットワーク上に別のサーバがすでに存在する場合、それをローカル・パッケージ・リポジトリ・サーバにすることにより、このインストールを実行できます。この記事では、必要なパッケージをインストールしたapt-mirrorサーバをセットアップし、StackStormのフルインストールをすばやく起動して実行するようにオフラインのクライアント・マシンを構成するためのステップを説明します。

 

" 注意: この例では、Ubuntuをミラー・サーバで使用しているため、apt-mirrorで作業を進めます。RHEL/CentOSを実行している場合は、ローカルYumリポジトリを構築できます。

 

ミラーをセットアップする

 

1) Ubuntuディストリビューションのパッケージをインストールしたapt-mirrorサーバがすでに用意されていることを前提とします。こちらにあるサンプルのガイドを参照してください。この一環として、apache Webサーバもインストールする必要があります。これは、クライアント・マシン(ST2インストール・ターゲット)からHTTP経由でリポジトリにアクセスできるようにするために使用されます。

 

2) StackStormを完全にインストールするには(Web UI、Chatopsなどを含む)、以下のパッケージをローカル・パッケージ・リポジトリで使用可能にする必要があります。

 

 

これらのパッケージのカスタム・リポジトリURLの詳細を、サーバ上のapt mirror.listファイルに追加します。

 

sudo vi /etc/apt/mirror.list
..
deb https://packagecloud.io/StackStorm/stable/ubuntu/ trusty main
deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2 multiverse
deb https://deb.nodesource.com/node_6.x trusty main
deb http://nginx.org/packages/ubuntu/ trusty nginx

deb-src https://packagecloud.io/StackStorm/stable/ubuntu/ trusty main
..

 

3) ミラーを更新して、必要なパッケージをローカル・ミラー上にダウンロードします。sudo apt-mirror
それぞれの新規パッケージのディレクトリがapt-mirror基本パス(set base_path)に作成されます。

 

/aptmirror/mirror/packagecloud.io/StackStorm/stable/ubuntu/
/aptmirror/mirror/repo.mongodb.org/apt/ubuntu/
/aptmirror/mirror/deb.nodesource.com/node_6.x/
/aptmirror/mirror/nginx.org/packages/ubuntu/

 

リポジトリにアクセスできるようにする


4) クライアント・マシンからHTTP経由でリポジトリにアクセスできるように、Webサーバをローカル・ミラー上で構成します。そのために、/var/www/html/ディレクトリにそれぞれのリポジトリへのシンボリック・リンクを作成します。

 

brocade@apt-mirror:/var/www/html$ ls -l
total 0
lrwxrwxrwx 1 root root 46 Jan  9 04:29 mongodb -> /aptmirror/mirror/repo.mongodb.org/apt/ubuntu/
lrwxrwxrwx 1 root root 44 Jan 10 02:30 nginx -> /aptmirror/mirror/nginx.org/packages/ubuntu/
lrwxrwxrwx 1 root root 46 Jan  9 04:29 nodejs -> /aptmirror/mirror/deb.nodesource.com/node_6.x/
lrwxrwxrwx 1 root root 47 Jan  9 04:29 st2 -> /aptmirror/mirror/packagecloud.io/StackStorm/stable/ubuntu/
lrwxrwxrwx 1 root root 44 Jan  9 02:44 ubuntu -> /aptmirror/mirror/archive.ubuntu.com/ubuntu/

 

Webサーバを再起動します。sudo service apache2 restart
リポジトリ・ディレクトリ構造をWebブラウザで確認します。http://local-mirror-ip/

 

オフライン・クライアント・システムをセットアップする

 

5) すべてのパッケージ(Ubuntu、ST2、MongoDb、NodeJS、Nginx)で、ローカル・ミラー・サーバを指すようにaptソースを変更します。mirrorをローカル・ミラー・サーバのホスト名またはIPの名前に置き換えます。

 

sudo vi /etc/apt/sources.list

 

既存の内容をすべてコメント化(#)して、以下に置き換えます。

 

deb http://mirror/ubuntu/ trusty main restricted universe multiverse
deb http://mirror/ubuntu/ trusty-security main restricted universe multiverse
deb http://mirror/ubuntu/ trusty-updates main restricted universe multiverse

deb http://mirror/st2 trusty_stable main
deb http://mirror/mongodb/ trusty/mongodb-org/3.2 multiverse
deb http://mirror/nodejs trusty main
deb http://mirror/nginx trusty nginx

 

パッケージ情報を更新します。sudo apt-get update

 

GPGキー・エラーが発生しましたか?

 

この時点で、クライアント上でカスタム・パッケージのGPG署名エラーが発生する可能性があります。

 

The following signatures couldn't be verified because the public key is not available:NO_PUBKEY

 

これを修正するには、以下のようにします。

 

サーバ側:

 

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv
sudo apt-key export > exportedkey

 

exportedkeyファイルをクライアントに移動します。
注意: 複数のキーのエラーが発生している場合、代わりに以下を使用できます。

 

sudo apt-key exportall > exportedkey(s) 

 

クライアント側:

 

sudo apt-key add exportedkey(s)

 

apt-get updateを再試行します。

 

6) これで、sudo apt-get install ?yコマンドを使用して、すべての必要なパッケージをローカル・ミラー・サーバからダウンロードすることができます。ワンライン・インストール・プロセスはこのシステムには無効です。ここに説明されている手動インストール・ステップに従う必要があります。できれば、Ansibleのようなツールを使用してシステムを構成してください。クライアント・システムでカスタム・リポジトリをセットアップする必要はないことに注意してください。aptがローカル・リポジトリ・サーバを指すように設定したため、セットアップはすでに済んでいます。代わりに、sudo apt-get install ?y st2|st2mistral|mongodb|nginx|nodejs|st2chatopsを使用して、依存関係を直接インストールします。

 

次のステップ

 

StackStormを稼働させる必要があります。インストールを検証します。StackStormはオフライン・システムにインストールされているため、通常のパッケージ・インストール・プロセスは無効です。この対処方法の1つは、HTTPプロキシを使用することです。フォローアップ・ブログには、セットアップの方法が示されています。

 

--------------------------------------------------------

 

【StackStorm Slack日本語チャネル開設しました】

 

SlackのStackstorm-communityチームに登録されている方は、そのまま#community-japanへJoinできます。
まだstackstorm-communityチームに登録されていない方は、下記よりご登録ください。
stackstorm.com/community-signup