LoginSignup
6
5

More than 5 years have passed since last update.

Centos7.4にMetabaseのインストールをするまで

Last updated at Posted at 2018-01-16

Centos7.4にMetabaseをインストールして基本設定するまでのメモ

目的

とあるシステムを作ってる時に単純にデータベースに入ってるデータをグラフとして出力したかっただけです。
他の選択肢としては、

  • Re:dash
  • Chart.js
  • kibana
  • etc...

など色々あると思います。
他のものとこれから色々比較してみようかと思い、メモに残すことにしました。

環境

OS 7.4
Metabase 0.27.2

Metabase 公式

Metabaseとは?

オープンソースのビジネスインテリジェンスツールでいわゆる意思決定などに使う補助ツール?
MacやAWSなど対応OSは広そうです。

インストール

Ubuntuと全然変わらないです。
やることは,全部で2つ

  • Java8 のインストール
  • MetaBase のダウンロード&インストール

Javaのインストール

古い環境のJavaがないか確認します。

    $ java -v
    bash: java: command not found

上記のコマンドで古いJavaがなければ、yumでインストールします。

    $ yum install -y java-1.8.0-openjdk
    $ java -version
    openjdk version "1.8.0_xx"

と表示されていれば終了。

MetaBaseのインストール

curl コマンドなどでパッケージのダウンロードをします。

    $ curl -LO http://downloads.metabase.com/v0.27.2/metabase.jar

後は、java -jar /ダウンロードで指定したパス/metabase.jarでインストールは終了です。
アクセスは、http://localhost:3000/setup/です。

注意事項

Centosは、selinuxやfirewalldなどが始めから起動しているバージョンもあるため、必ずサービスをストップまたはサービス同士の共存をさせてからMetabaseを動かすようにして下さい。

    $ setenforce 0
    $ systemctl stop firewalld

基本設定

ログインするとこの画面にwelcomeページに行くと思います。
スクリーンショット 2018-01-16 17.33.19.png

後は、入力フォームに従って情報を入力して下さい。
スクリーンショット 2018-01-16 19.51.45.png

2のフォームでは、Metabaseがアクセスするデータベースの情報を選択、入力します。
用意していない人は後でを選択することもできます。
スクリーンショット 2018-01-16 19.53.28.png

最後に「Next」を押して基本的な設定は完了です。
スクリーンショット 2018-01-16 19.57.37.png

基本的な使い方は、機会があれば別の記事に書きます。

追記[2018/11/09]:
久しぶりに構築する機会があったので構築してみると以下のエラーが出て失敗...

11-09 16:36:43 ERROR metabase.core :: Metabaseの初期化に失敗しました
java.lang.OutOfMemoryError: Java heap space
    at java.util.Arrays.copyOf(Arrays.java:3236)
    at java.io.ByteArrayOutputStream.toByteArray(ByteArrayOutputStream.java:191)
    at java.util.jar.JarVerifier.processEntry(JarVerifier.java:260)
    at java.util.jar.JarVerifier.update(JarVerifier.java:230)
    at java.util.jar.JarFile.initializeVerifier(JarFile.java:383)
    at java.util.jar.JarFile.getInputStream(JarFile.java:450)
    at sun.net.www.protocol.jar.JarURLConnection.getInputStream(JarURLConnection.java:164)
    at liquibase.resource.ClassLoaderResourceAccessor.getResourcesAsStream(ClassLoaderResourceAccessor.java:53)
    at liquibase.util.StreamUtil.singleInputStream(StreamUtil.java:186)
    at liquibase.parser.core.yaml.YamlChangeLogParser.parse(YamlChangeLogParser.java:27)
    at liquibase.changelog.DatabaseChangeLog.include(DatabaseChangeLog.java:525)
    at liquibase.changelog.DatabaseChangeLog.includeAll(DatabaseChangeLog.java:490)
    at liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:368)
    at liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:293)
    at liquibase.parser.core.yaml.YamlChangeLogParser.parse(YamlChangeLogParser.java:78)
<domain type='kvm'>
    at liquibase.Liquibase.getDatabaseChangeLog(Liquibase.java:217)
    at liquibase.Liquibase.listUnrunChangeSets(Liquibase.java:1281)
    at liquibase.Liquibase.listUnrunChangeSets(Liquibase.java:1274)
    at liquibase.Liquibase.listUnrunChangeSets(Liquibase.java:1270)
    at metabase.db$has_unrun_migrations_QMARK_.invokeStatic(db.clj:147)
    at metabase.db$has_unrun_migrations_QMARK_.invoke(db.clj:140)
    at metabase.db$migrate_up_if_needed_BANG_.invokeStatic(db.clj:177)
    at metabase.db$migrate_up_if_needed_BANG_.invoke(db.clj:168)
    at metabase.db$migrate_BANG_$fn__15423.invoke(db.clj:288)
    at clojure.java.jdbc$db_transaction_STAR_.invokeStatic(jdbc.clj:747)
    at clojure.java.jdbc$db_transaction_STAR_.invoke(jdbc.clj:717)
    at clojure.java.jdbc$db_transaction_STAR_.invokeStatic(jdbc.clj:782)
    at clojure.java.jdbc$db_transaction_STAR_.invoke(jdbc.clj:717)
    at clojure.java.jdbc$db_transaction_STAR_.invokeStatic(jdbc.clj:730)
    at clojure.java.jdbc$db_transaction_STAR_.invoke(jdbc.clj:717)
    at metabase.db$migrate_BANG_.invokeStatic(db.clj:276)
    at metabase.db$migrate_BANG_.invoke(db.clj:257)
11-09 16:36:43 INFO metabase.core :: Metabaseをシャットダウン中...
11-09 16:36:43 INFO metabase.core :: Metabseのシャットダウンが完了しました

文章見ているとメモリが足りていないよう
動作させている間のメモリ使用率を確認してみると

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
10665 root      20   0 3096720 701364  22236 S 99.5  40.7   2:30.10 java

cpu周りが足りていない感じ?
このときのメモリとCPUは最低限だったので単純に二倍にしてみたら最後まで動作しました。

6
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
5