はじめに
システムの環境によってはインターネットに接続できないオフライン環境でMarkLogicをインストールしなければならないことがあります。
MarkLogicは依存するライブラリが多く、その全てをリストアップして手作業でインストールするのは大変です。
そのような制約環境でのインストール方法を記します。
環境
以下の環境での方法を記します。
資材等 | バージョン |
---|---|
CentOS7 | 7.4.1708 |
MarkLogic9 | 9.0-3.1 |
事前準備
CentOSのイメージファイルをダウンロードします。Everything ISOをダウンロードする必要があります。
MarkLogic9のRPMファイルもダウンロードします。
CentOSのISOファイルをyumリポジトリに追加する
CentOSのISOファイルをメディアに書き込むか、仮想環境ならばISOイメージを仮想ディスクとして読み込むなどしてマウントします。ここでは"/media"にマウントする例を記します。
# mount /dev/cdrom /media
続いて、yumのリポジトリの設定ファイルを作成します。
# /etc/yum.repos.d/media.repo
[media]
name=media
baseurl=file:///media/
enabled=1
gpgcheck=0
MarkLogicのインストール
CentOSのISOイメージを対象にyumリポジトリを用意したたため、yumを使ってMarkLogicをインストールできるようになりました。
以下のように実行します。
# yum --disablerepo=* --enablerepo=media localinstall [MarkLogicのRPMファイル]
実行すると以下のように表示されます。
読み込んだプラグイン:fastestmirror, langpacks
/tmp/MarkLogic-9.0-3.1.x86_64.rpm を調べています: MarkLogic-9.0-3.1.x86_64
/tmp/MarkLogic-9.0-3.1.x86_64.rpm をインストール済みとして設定していま す
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ MarkLogic.x86_64 0:9.0-3.1 を インストール
--> 依存性の処理をしています: lsb-core-amd64 のパッケージ: MarkLogic-9.0-3.1.x86_64
media | 3.6 kB 00:00
(1/2): media/primary_db | 5.7 MB 00:00
(2/2): media/group_gz | 156 kB 00:00
Determining fastest mirrors
--> 依存性の処理をしています: libc.so.6(GLIBC_2.14) のパッケージ: MarkLogic-9.0-3.1.x86_64
--> トランザクションの確認を実行しています。
---> パッケージ glibc.i686 0:2.17-196.el7 を インストール
--> 依存性の処理をしています: libfreebl3.so(NSSRAWHASH_3.12.3) のパッケージ: glibc-2.17-196.el7.i686
--> 依存性の処理をしています: libfreebl3.so のパッケージ: glibc-2.17-196.el7.i686
---> パッケージ redhat-lsb-core.x86_64 0:4.1-27.el7.centos.1 を インストール
--> 依存性の処理をしています: redhat-lsb-submod-security(x86-64) = 4.1-27.el7.centos.1 のパッケージ: redhat-lsb-core-4.1-27.el7.centos.1.x86_64
--> 依存性の処理をしています: spax のパッケージ: redhat-lsb-core-4.1-27.el7.centos.1.x86_64
--> 依存性の処理をしています: /usr/bin/patch のパッケージ: redhat-lsb-core-4.1-27.el7.centos.1.x86_64
--> 依存性の処理をしています: /usr/bin/m4 のパッケージ: redhat-lsb-core-4.1-27.el7.centos.1.x86_64
--> トランザクションの確認を実行しています。
---> パッケージ m4.x86_64 0:1.4.16-10.el7 を インストール
---> パッケージ nss-softokn-freebl.i686 0:3.28.3-6.el7 を インストール
---> パッケージ patch.x86_64 0:2.7.1-8.el7 を インストール
---> パッケージ redhat-lsb-submod-security.x86_64 0:4.1-27.el7.centos.1 を イン ストール
---> パッケージ spax.x86_64 0:1.5.2-13.el7 を インストール
--> 依存性解決を終了しました。
依存性を解決しました
================================================================================
Package アーキテクチャー
バージョン リポジトリー 容量
================================================================================
インストール中:
MarkLogic x86_64 9.0-3.1 /MarkLogic-9.0-3.1.x86_64 1.0 G
依存性関連でのインストールをします:
glibc i686 2.17-196.el7 media 4.2 M
m4 x86_64 1.4.16-10.el7 media 256 k
nss-softokn-freebl i686 3.28.3-6.el7 media 198 k
patch x86_64 2.7.1-8.el7 media 110 k
redhat-lsb-core x86_64 4.1-27.el7.centos.1 media 38 k
redhat-lsb-submod-security
x86_64 4.1-27.el7.centos.1 media 15 k
spax x86_64 1.5.2-13.el7 media 260 k
トランザクションの要約
================================================================================
インストール 1 パッケージ (+7 個の依存関係のパッケージ)
合計容量: 1.1 G
総ダウンロード容量: 5.1 M
インストール容量: 1.1 G
Is this ok [y/d/N]: y
Downloading packages:
--------------------------------------------------------------------------------
合計 50 MB/s | 5.1 MB 00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
インストール中 : redhat-lsb-submod-security-4.1-27.el7.centos. 1/8
インストール中 : nss-softokn-freebl-3.28.3-6.el7.i686 2/8
インストール中 : glibc-2.17-196.el7.i686 3/8
インストール中 : spax-1.5.2-13.el7.x86_64 4/8
インストール中 : m4-1.4.16-10.el7.x86_64 5/8
インストール中 : patch-2.7.1-8.el7.x86_64 6/8
インストール中 : redhat-lsb-core-4.1-27.el7.centos.1.x86_64 7/8
インストール中 : MarkLogic-9.0-3.1.x86_64 8/8
検証中 : redhat-lsb-submod-security-4.1-27.el7.centos. 1/8
検証中 : spax-1.5.2-13.el7.x86_64 2/8
検証中 : glibc-2.17-196.el7.i686 3/8
検証中 : redhat-lsb-core-4.1-27.el7.centos.1.x86_64 4/8
検証中 : MarkLogic-9.0-3.1.x86_64 5/8
検証中 : m4-1.4.16-10.el7.x86_64 6/8
検証中 : patch-2.7.1-8.el7.x86_64 7/8
検証中 : nss-softokn-freebl-3.28.3-6.el7.i686 8/8
インストール:
MarkLogic.x86_64 0:9.0-3.1
依存性関連をインストールしました:
glibc.i686 0:2.17-196.el7
m4.x86_64 0:1.4.16-10.el7
nss-softokn-freebl.i686 0:3.28.3-6.el7
patch.x86_64 0:2.7.1-8.el7
redhat-lsb-core.x86_64 0:4.1-27.el7.centos.1
redhat-lsb-submod-security.x86_64 0:4.1-27.el7.centos.1
spax.x86_64 0:1.5.2-13.el7
完了しました!
これでインストールが完了します。
おわりに
MarkLogicは多くの依存ライブラリを必要としており、特に64bit版と32bit版の両方が必要なものが多々あります。
CentOSのISOイメージもDVD ISOでは不足しているものがありますので、Everything ISOを用意するのが楽です。
yumのリポジトリをローカル環境に構築する方法は、他の資材のインストールでも役立つのでご参考になれば幸いです。
\def\textsmall#1{%
{\rm\scriptsize #1}
}
免責事項
$\textsmall{当ユーザ会は本文書及びその内容に関して、いかなる保証もするものではありません。}$
$\textsmall{万一、本文書の内容に誤りがあった場合でも当ユーザ会は一切責任を負いかねます。}$
$\textsmall{また、本文書に記載されている事項は予告なしに変更または削除されることがありますので、予めご了承ください。}$