しがないインフラエンジニアLOG

インフラエンジニアとしての諸々

KIBANAインストールメモ

今回したこと

KIBANAインストールメモ

なぜやろうとおもったか

ElasticSearchに突っ込んだデータを参照するため。

前提

・ElasticSearchのリポジトリが登録済みであること。

1. インストール

# yum install kibana.x86_64

2.起動設定

# chkconfig --add kibana

3. 起動

# service kibana start

最後に

メモすることのほどでもないがElasticSearchの記事を書いたついでにメモとして記載。

ElasticSearch導入メモ(CentOS6.9)

今回したこと

ElasticSearch導入についての手順

なぜやろうとおもったか

自宅環境にログ収集用のElasticSearchを構築した際にはまってのでメモ。

前提

・ CentOS6.9(minimalインストール) ・iptable/selinux disable

1. 事前準備

# yum update
# yum install java-1.8.0-openjdk.x86_64
# vi ~/.bashrc
exports JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk.x86-64
# alternatives --config java
* jre-1.8.0-openjdkを選択

# vi /etc/security/limits.conf
elasticsearch    hard    nproc           4096
elasticsearch    soft    nproc           4096
elasticsearch    -       nofile          65536
# reboot

2. ElasticSearchインストール

# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
# vi /etc/yum.repos.d/elasticsearch.repo
[elasticsearch-6.x]
name=Elasticsearch repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
# yum list | grep elastic
# yum install elasticsearch

3. 起動設定

# chkconfig --add elasticsearch
# chkconfig elasticsearch on

4. パラメーターチューニング

# cp /etc/elasticsearch/elasticsearch.yml /etc/elasticsearch/elasticsearch.yml.org
# cp /etc/elasticsearch/jvm.options /etc/elasticsearch/jvm.options.org
# cp /etc/sysconfig/elasticsearch /etc/sysconfig/elasticsearch.org

# vi /etc/elasticsearch/elasticsearch.yml
(ipのバインド)
< network.host: 0.0.0.0
< bootstrap.system_call_filter: false
---
> #network.host: 192.168.0.1

*eth1でクラスターと接続している場合は
< network.bind_host: 0.0.0.0
< network.publish_host: _eth1:ipv4_
< bootstrap.system_call_filter: false
---
> #network.host: 192.168.0.1

(クラスターのホストdiscovery)
< discovery.zen.ping.unicast.hosts: ["192.168.56.101", "192.168.56.102", "192.168.56.103", "192.168.56.104", "192.168.56.105"]
---
> #discovery.zen.ping.unicast.hosts: ["host1", "host2"]

bootstrap.system_call_filter: false

# vi /etc/elasticsearch/jvm.options
-Xms1g
-Xmx1g

# vi /etc/elasticsearch/jvm.options
< ES_JAVA_OPTS="-XX:-AssumeMP"
---
> #ES_JAVA_OPTS=

5. 起動

# service elasticsearch start

最後に

AWS環境では特にパラメーターの変更は必要なく立ち上がったが、 CentOSの場合、「ES_JAVA_OPTS="-XX:-AssumeMP"」を記載しないとJAVAのエラーが出力され起動しなかったのではまった。 LinuxディストリビューターによってJavaの設定が違うことが原因とGithubのissueにあったのでメモとして記載する。

'Windows Subsystem for Linux' でVagrantを操作する方法

今回したこと

今回はWindows Subsystem for Linux(以下WSL) にVagrantをインストールして、 WSL上でVagrantファイルを操作できるようにしてみました。

以下のhashcorp社の公式手順に沿って実施したのですが、 特につまずいたこともなく導入はスムーズでしたので参考にしていただければと思います。

Vagrant and Windows Subsystem for Linux - Vagrant by HashiCorp

 

なぜやろうとおもったか

職場ではMacユーザーなのですが、家でばWindows10をつかってます。

今までプログラムの動作確認のためにAWSやサクラのVPSWinSCPなどでファイルを上げて動作確認をしていました。

ただいちいち更新のたびにLinuxにファイルを上げる必要がある(同期していたとしても)面倒なので、 Windows上のWSLを使用してVagrantでうまい具合に開発しようと思ったのが始まりです。

前提

・WSLがインストールされていること。

Windows Subsystem for Linuxをインストールしてみよう! - Qiita

VirtualBoxWindows上にインストールされていること。

https://qiita.com/ringo0321/items/afa176192d9b5edf923d

1. パッケージのダウンロード

以下のURLから最新版のDebianパッケージ(64bit)を一旦Winowsのデスクトップにダウンロードしましょう。 執筆時点では「vagrant_2.0.1_x86_64.deb」となっているので今回はこちらを利用します。 Download - Vagrant by HashiCorp

2.Vagrantインストール 

WSLを起動後に以下のコマンドでWSL上の/tmpディレクトリにファイルを移動します。

mv /mnt/c/Users/{ユーザー名}/Desktop/vagrant_2.0.1_x86_64.deb /tmp/.

移動したファイルをdpkgコマンドでインストールします。

cd /tmp
sudo dpkg -i vagrant_2.0.1_x86_64.deb

これでVagrantのインストールは完了です。

3.VirtualBoxの実行ファイルをPATHに加える。

このままだとVagrantからWindow側にインストールしている VirtualBoxの操作ができないので以下の操作でWSL側のPATHに加えます。 ついでにVagrantWindowsへのアクセス権の許可を与えます。

vi /home/{ユーザー名}/.bashrc
末尾に以下を追加

# VagrantのWindowsシステムへのアクセス許可
export VAGRANT_WSL_ENABLE_WINDOWS_ACCESS="1"

# Vagrantのプロジェクトフォルダを指定します。
export VAGRANT_WSL_WINDOWS_ACCESS_USER_HOME_PATH="/home/{ユーザー名}/vagrant/CentOS67"

# VirtualBoxのexeをPATHに追加
PATH=$PATH:"/mnt/c/Program Files/Oracle/VirtualBox"

bashrc反映のため、sourceコマンドもしくはWSLの再起動を実施してください。

今回は例として「/home/{ユーザー名}/vagrant/CentOS67」ディレクトリで CentOS6.7のVagrantBoxを立ち上げたいと思います。

Vagrant設定と起動

ここまでくればあとは普通にVagrantを起動させるだけです。

## ディレクトリ作成
mkdir -p /home/{ユーザー名}/vagrant/CentOS67

## ディレクトリ移動
cd /home/{ユーザー名}/vagrant/CentOS67

## VagrantBoxダウンロード(今回はbento/centos-6.7を使用)
vagrant box add bento/centos-6.7 https://atlas.hashicorp.com/bento/boxes/centos-6.7

## Vagrantfileの作成
vagrant init

## Vagrantfileの修正
vi Vagrantfile
以下の行のコメントアウトを外し修正を実施。
変更前:
# config.vm.box = "base"
変更後
config.vm.box = "bento/centos-6.7"

## Vagrantの起動
vagrant init
  • Boxのダウンロードに時間がかかるので注意してください。

Vagrant 接続

あとは以下のコマンドでVagrantsshログイン

vagrant ssh 

最後に

いかがでしたか?

Macだと特に苦戦することもないVagrant導入ですが、今回はWindows10のWSLで実践してみました。

今回の導入でWSLからWindowsのexeを起動できるところまで持っていった、マイクロソフトの技術者に対して単純に感心しました。

WEB系の開発だと大体Macかと思いますが、たまにはWindowsで遊んでみてはいかがでしょうか!