NoahOrblog

某・福島にある大学のコンピュータ理工学部の大学生のお話。

CockroachDB備忘録【導入編】

Noahです。

CockroachDBを触る機会があったのですが、いかんせん日本語の情報量が少なすぎるので導入する際に躓いたところを備忘録として残しておきます。

CockroachDBとは

f:id:NoahOrberg:20170805105156g:plain

調べた限り、GoogleのSpannerのオープンソースクローンらしい

いわゆるNewSQLであり、RDBとNoSQLのいいとこどりをしている分散型DB

ちなみに最近(2017年5月頃) にVersion1.0がリリースされた模様

インストール

まだ新しいため、日本語の情報が少ない。

brewでも行けるっぽいが、バイナリを直で落としてPATH通すことに

https://www.cockroachlabs.com/docs/stable/install-cockroachdb.html

このページを参考に、インストールする

リンク中にあるtgzファイルをダウンロード後に、

# 解凍
tar xfz cockroach-v1.0.4.darwin-10.9-amd64.tgz
# PATHが通してあるディレクトリに移動
cp -i cockroach-v1.0.4.darwin-10.9-amd64/cockroach /usr/local/bin
# 確認
cockroach version

これでバージョン情報が出力されればOK

起動

正直、ここが辛かった。

どこを見ても、

$ cockroach start

と書いてあるが、これでは起動しない

f:id:NoahOrberg:20170805111553p:plain

CAの証明書がないので、insecureで起動させる

$ cockroach start --insecure

しかし、これでもうまく起動しない。

正確には起動はするが、 localhost:8080 での管理画面で

f:id:NoahOrberg:20170805112845p:plain

Connection to CockroachDB node lost. と怒られるのだ。

実際、起動時のターミナルの画面を見てみると、

f:id:NoahOrberg:20170805111017p:plain

ん、admin(管理用ページ)が http://Reo-no-MBP:8080 (Reo-no-MBP とは自分のマシンの名前である)になっている。

アクセスすると

f:id:NoahOrberg:20170805111148p:plain

\(^o^)/

結局

以下で起動するとホストをlocalhostにして起動できます

$ cockroach start --insecure --host=localhost

結局デフォでホストをいい感じに設定できていなかっただけか…?

ちなみに2台のPC(両方共バイナリから導入した)で両方共同じところで躓いていたため、バイナリで落としたのが良くなかったのかも??