Aerospike とは
Aerospike(エアロスパイク)とは、米 Aerospike 社によって開発されている NoSQL データベースです
とにかく高速であると言われており、最近では日本の企業でも採用事例が増えてきています
今回は OSS 版を CentOS 上に構築してみたいと思います
作業環境
- CentOS 7.3
Aerospike のインストール
公式ドキュメントを参考に Aerospike をインストールします
$ wget -O aerospike.tgz 'http://aerospike.com/download/server/latest/artifact/el7' $ tar -xvf aerospike.tgz $ cd aerospike-server-community-3.12.0-el7/ $ sudo ./asinstall
自動起動設定をして、Aerospike を起動します
$ sudo systemctl enable aerospike $ sudo systemctl start aerospike
Aerospike が起動したのでステータスを確認してみましょう
$ sudo systemctl status aerospike ● aerospike.service - Aerospike Server Loaded: loaded (/usr/lib/systemd/system/aerospike.service; enabled; vendor preset: disabled) Drop-In: /etc/systemd/system/aerospike.service.d └─aerospike.conf Active: active (running) since 月 2017-03-27 13:33:10 UTC; 4s ago Process: 3559 ExecStartPre=/bin/systemctl start aerospike_telemetry (code=exited, status=0/SUCCESS) Process: 3554 ExecStartPre=/usr/bin/asd-systemd-helper (code=exited, status=0/SUCCESS) Main PID: 3563 (asd) CGroup: /system.slice/aerospike.service └─3563 /usr/bin/asd --config-file /etc/aerospike/aerospike.conf --fgdaemon 3月 27 13:33:14 localhost.localdomain asd[3563]: Mar 27 2017 13:33:14 GMT: INFO (paxos): (paxos.c:3730) ... no other nodes detected - node will operate a...e cluster 3月 27 13:33:14 localhost.localdomain asd[3563]: Mar 27 2017 13:33:14 GMT: INFO (partition): (partition_balance.c:285) {test} 4096 absent partitions prom...to master 3月 27 13:33:14 localhost.localdomain asd[3563]: Mar 27 2017 13:33:14 GMT: INFO (partition): (partition_balance.c:285) {bar} 4096 absent partitions promo...to master 3月 27 13:33:14 localhost.localdomain asd[3563]: Mar 27 2017 13:33:14 GMT: INFO (paxos): (paxos.c:3740) starting paxos threads 3月 27 13:33:14 localhost.localdomain asd[3563]: Mar 27 2017 13:33:14 GMT: INFO (nsup): (thr_nsup.c:1421) starting namespace supervisor threads 3月 27 13:33:14 localhost.localdomain asd[3563]: Mar 27 2017 13:33:14 GMT: INFO (demarshal): (thr_demarshal.c:863) starting 1 demarshal threads 3月 27 13:33:14 localhost.localdomain asd[3563]: Mar 27 2017 13:33:14 GMT: INFO (demarshal): (socket.c:709) Started client endpoint 0.0.0.0:3000 3月 27 13:33:14 localhost.localdomain asd[3563]: Mar 27 2017 13:33:14 GMT: INFO (info-port): (thr_info_port.c:307) starting info port thread 3月 27 13:33:14 localhost.localdomain asd[3563]: Mar 27 2017 13:33:14 GMT: INFO (info-port): (socket.c:709) Started info endpoint 0.0.0.0:3003 3月 27 13:33:14 localhost.localdomain asd[3563]: Mar 27 2017 13:33:14 GMT: INFO (as): (as.c:449) service ready: soon there will be cake! Hint: Some lines were ellipsized, use -l to show in full.
Aerospike の起動が確認できました!
AMC(Aerospike Management Console)のインストール
AMC は Aerospike の管理ツールです
複数の node をブラウザ上から一度に管理できるそうなので、こちらもインストールしていきたいと思います
まずは、依存パッケージをインストールします
$ sudo yum install gcc python python-devel
こちらも公式ドキュメントを参考にインストールします
$ wget http://aerospike.com/download/amc/latest/artifact/el7 $ sudo rpm -ivh el7
自動起動設定をしてから起動します
$ sudo systemctl enable amc $ sudo systemctl start amc
ステータスを確認してみます
$ sudo systemctl status amc ● amc.service - LSB: Aerospike's Management Console Loaded: loaded (/etc/rc.d/init.d/amc; bad; vendor preset: disabled) Active: active (running) since 月 2017-03-27 13:48:04 UTC; 45s ago Docs: man:systemd-sysv-generator(8) Process: 3819 ExecStart=/etc/rc.d/init.d/amc start (code=exited, status=0/SUCCESS) Main PID: 3824 (amc) CGroup: /system.slice/amc.service └─3824 /opt/amc/amc -config-file=/etc/amc/amc.conf -config-dir=/etc/amc 3月 27 13:48:04 localhost.localdomain systemd[1]: Starting LSB: Aerospike's Management Console... 3月 27 13:48:04 localhost.localdomain runuser[3822]: pam_unix(runuser:session): session opened for user root by (uid=0) 3月 27 13:48:04 localhost.localdomain amc[3819]: Starting amc: [ OK ] 3月 27 13:48:04 localhost.localdomain systemd[1]: Started LSB: Aerospike's Management Console.
AMC の起動も確認することができました!
AMC はデフォルトでは 8081 ポートで起動するので、ブラウザからアクセスしてみます
Aerospike の IP アドレスとポートを入力する画面が表示されるので、それぞれ localhost, 3000 と設定し、『Connect』ボタンを押下します
特に問題なければ次のような画面が表示されます
まとめ
Aerospike をインストールするところまで学習しました
実際にレコードを insert, select, update, delete するなど、今後色々と触って試していきたいと思います
データベースエンジニア教本 MySQL & PostgreSQL & NoSQL編 (Software Design別冊)
- 作者: Software Design編集部
- 出版社/メーカー: 技術評論社
- 発売日: 2017/10/13
- メディア: 単行本
- この商品を含むブログ (1件) を見る
ビッグデータを支える技術―刻々とデータが脈打つ自動化の世界 (WEB+DB PRESS plus)
- 作者: 西田圭介
- 出版社/メーカー: 技術評論社
- 発売日: 2017/09/22
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る