Microsoft AzureのCentOSにElasticsearchをインストールする手順を解説

Azure

Microsoftが提供するクラウドサービス「Azure」にCentOSの仮想マシンを構築し、その仮想マシンにElasticsearchをインストールする手順を解説する。

このエントリでは、

  • Javaのインストール
  • Elasticsearchのインストール
  • Elasticsearchの動作環境の設定

について解説する。

尚、AzureにCentOSの仮想マシンを構築する手順については割愛する。

AzureのCentOSにElasticsearchをインストールする手順の概要

Azureだからといって、特別な手続きやお作法が必要なわけでは無い。

基本的には、LinuxディストリビューションであるCentOSに、Elasticsearchをインストールするという手順だ。

Elasticsearchをインストールする環境

今回、Elasticsearchをインストールする環境は、下記の構成となっている。

  • CentOS7.7
  • Java11

また、インストールするElasticsearchは、7.5.1とする。

仮想マシンのスペック

今回、Elasticsearchを導入するターゲット環境は、Microsoft Azureに構築された仮想マシンで、CentOS7.7がインストールされている。

仮想マシンのスペックだが、Azureの仮想マシンには、「サイズ」という概念があって、サイズによって、処理能力やメモリ量などが決まっている。

今回は、「Standard B2s (2 vcpu 数、4 GiB メモリ)」というサイズの仮想マシンにElasticsearchをインストールする。

Azure仮想マシンのサイズについては、Azure の Linux 仮想マシンのサイズを参照のこと。

CentOS7.7にJava(JDK)をインストール

Elasticsearchを動作させるには、Javaが必要だ。

今回は、OpenJDK11を導入する。

CentOSへのJavaのインストールは、下記の通りyumを利用する。

sudo yum install java-11-openjdk.x86_64
sudo yum install java-11-openjdk-devel.x86_64

JREとJDKが、別のパッケージで提供されているので、それぞれをインストールする。

コマンドを実行すると、画面上に多くの表示がされるが、最後に「Complete!」と表示されるはずだ。

Javaのインストールを確認するには、「java --version」を実行して、Javaのメッセージが表示されれば完了だ。

Elasticsearchのインストール

Elasticserachのインストール手順は、Install Elasticsearch with RPMに詳しく解説されており、今回もこちらを参考にインストールを行った。

尚、これらの手順は、管理者権限が必要となる。

Azureは、仮想マシン作成時に指定したユーザーにsudo権限が付与されているので、「sudo su -」で管理者に転身できる。

適宜、sudoとかsu等してください。

Elasticsearch署名キーのインポート

yumでElasticsearchをインストールする前に、署名キーをインポートする。

rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

Elasticsearch用のyumレポジトリを作成

yumを使ってElasticsearchをインストールするには、yumのレポジトリファイルを作成しなければならない。

作成するレポジトリファイルは「/etc/yum.repos.d/elasticsearch.repo」というファイル。

レポジトリファイルに記述する内容は、下記の通り。

[elasticsearch]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=0
autorefresh=1
type=rpm-md

Elasticsearchのインストール

下記コマンドで、Elasticsearchをインストールする。

yum install --enablerepo=elasticsearch elasticsearch

コマンドを実行すると、画面上に色々表示されるが、最後に「Complete!」と表示されれば完了。

Elasticsearchの起動設定

Elasticsearchの起動は下記。

sudo systemctl start elasticsearch

仮想マシンの再起動後も、自動的にElasticsearchを起動させるために、下記コマンドを実行する。

sudo systemctl enable elasticsearch

Elasticsearchの起動確認

Elasticsearchの起動確認は、

sudo systemctl status elasticsearch

を実行すると、Elasticsearchの状態が表示される。

また、下記コマンドを実行しても、Elasticsearchの状態が返却される。

curl http://localhost:9200

Elasticsearch関連のディレクトリ

Elasticsearchに関連するディレクトリについてまとめる。

/usr/share/elasticsearch/
Elasticsearchのインストールディレクトリ
/etc/elasticsearch
Elasticsearchの設定ファイルを収めたディレクトリ
/var/log/elasticsearch
Elasticsearchのログファイルを取得するディレクトリ
/var/lib/elasticsearch
Elasticsearchのデータディレクトリ
/etc/sysconfig/elasticsearch
Elasticsearchの動作環境をするファイルを収めたディレクトリ

まとめ:AzureのCentOSにも普通にインストール出来る

今回は、Azureに構築した仮想マシンにCentOS7.7を導入し、Elasticsearchをインストールしてみた。

Azure特有の問題やクセは特に無く、普通にCentOSにElasticsearchをインストールするという流れだ。

当初は、1GBのメモリ環境の仮想マシンにElasticsearchをしたが、Elasticsearchは起動しなかった。

Azureの仮想マシンサイズでいうところの、Standard B2s (2 vcpu 数、4 GiB メモリ)というスペックで、何とか動作しているという印象である。

本格的な運用を視野に入れると、更に贅沢なマシンスペックが必要になるだろう。

タイトルとURLをコピーしました