以下の内容はhttps://kazuhira-r.hatenablog.com/entry/2025/07/21/154216より取得しました。


Ubuntu Linux 24.04 LTSにGrafana 12をインストールする

これは、なにをしたくて書いたもの?

ちょっとGrafana関連のものを扱いたくなったので、Grafanaからひとつひとつ環境を見ていくことにしました。
Grafanaは以前扱ったことがあるのですが、7年くらい前の話なので今回は新しく書こうと思います。

まずはUbuntu Linux 24.04 LTSにGrafana 12をインストールします。

Grafana

Grafanaのドキュメントはこちら。

Grafana OSS and Enterprise | Grafana documentation

Grafanaはメトリクス、ログ、トレースの保管場所を問わずクエリー、可視化、アラート生成、探索ができるソフトウェアです。
様々なデータソースを扱うことができ、PrometheusやAmazon CloudWatchなどの時系列データベース、Grafana Lokiや
Elasticsearchのようなロギングツール、PostgreSQLのようなRDBMSGitHubのようなCI/CDに関するものなどが含まれます。

こちらのページもGrafanaの外観を掴むのによいでしょう。

About Grafana | Grafana documentation

また、GrafanaにはGrafana以外のOSSプロジェクトがあり、これらを押さえるページとしても有用かなと思います。

  • Grafana Loki
  • Grafana Tempo
  • Grafana Mimir
  • Grafana Pyroscope
  • Grafana Faro
  • Grafana Beyla
  • Grafana Alloy
  • Grafana k6
  • Grafana OnCall

About Grafana / Other Grafana Labs OSS Projects

GrafanaはOSS版、Enterprise版、クラウド版の3つがあります。

Enterprise版では、チーム管理の強化や利用できるデータソースが大幅に増えているようです。

Grafana Enterprise | Grafana documentation

OSS版ではチーム管理はGrafana組み込みのもののみようです。

Grafana Teams | Grafana documentation

Enterprise版になると、OAuth 2.0を使った他サービスとのチーム同期が使えるようになります。

Data sources | Grafana documentation

データソースに関しては、Enterprise版だとOSS版の1.5倍ほどのデータソースが追加されます。

これはEnterprise版が欲しくなるでしょうね。

Grafanaの基礎知識・周辺知識

Grafanaに関する基礎知識・周辺知識はこちらのページおよびその配下のページを見るのがよさそうです。

Introduction | Grafana documentation

GrafanaおよびGrafana以外のプロジェクトの説明や、Prometheusとの関係性が書かれたりしています。また、基本的な
用語の説明もこちらで行われています。

今回はドキュメントを見るのはこれくらいにして、Grafanaをインストールしてみます。

環境

今回の環境はこちら。Ubuntu Linux 24.04 LTSです。

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 24.04.2 LTS
Release:        24.04
Codename:       noble


$ uname -srvmpio
Linux 6.8.0-64-generic #67-Ubuntu SMP PREEMPT_DYNAMIC Sun Jun 15 20:23:31 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Grafanaをインストールする

それでは、こちらのドキュメントに沿ってGrafanaをインストールします。

Install Grafana | Grafana documentation

DebianUbuntu Linux向けのページはこちら。

Install Grafana on Debian or Ubuntu | Grafana documentation

インストール方法としては、aptリポジトリーからインストールする方法、debパッケージからインストールする方法、
スタンドアロンバイナリーをインストールする方法があります。

それぞれ見ていきましょう。

aptリポジトリーからインストールする

まずはaptリポジトリーからインストールします。

Install Grafana on Debian or Ubuntu / Install from APT repository

必要なパッケージのインストール。

$ sudo apt install apt-transport-https software-properties-common wget

GPG鍵のインポート。

$ sudo mkdir -p /etc/apt/keyrings/
$ wget -q -O - https://apt.grafana.com/gpg.key | gpg --dearmor | sudo tee /etc/apt/keyrings/grafana.gpg > /dev/null

aptリポジトリーの追加。

$ echo "deb [signed-by=/etc/apt/keyrings/grafana.gpg] https://apt.grafana.com stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list

パッケージリストの更新。

$ sudo apt update

これでパッケージにGrafanaが追加されます。

$ apt show grafana
Package: grafana
Version: 12.0.2-01
Priority: optional
Section: default
Maintainer: contact@grafana.com
Installed-Size: 649 MB
Depends: adduser, musl
Homepage: https://grafana.com
License: AGPLv3
Vendor: "Grafana Labs"
Download-Size: 175 MB
APT-Sources: https://apt.grafana.com stable/main amd64 Packages
Description: Grafana

N: There are 451 additional records. Please use the '-a' switch to see them.

インストール。

$ sudo apt install grafana

バージョン。

$ grafana-server --version
Version 12.0.2+security-01 (commit: 76ea754dbb0bfb3e157981ec73ba4ef1efae4207, branch: HEAD)

ドキュメントやWeb UIを除くと、こんなファイルがインストールされます。

$ dpkg -L grafana | grep -vE '/usr/share/grafana/(public|docs)/'
/.
/usr
/usr/lib
/usr/lib/systemd
/usr/lib/systemd/system
/usr/lib/systemd/system/grafana-server.service
/usr/share
/usr/share/doc
/usr/share/doc/grafana
/usr/share/doc/grafana/changelog.gz
/usr/share/grafana
/usr/share/grafana/conf
/usr/share/grafana/conf/ldap.toml
/usr/share/grafana/conf/defaults.ini
/usr/share/grafana/conf/sample.ini
/usr/share/grafana/conf/provisioning
/usr/share/grafana/conf/provisioning/alerting
/usr/share/grafana/conf/provisioning/alerting/sample.yaml
/usr/share/grafana/conf/provisioning/plugins
/usr/share/grafana/conf/provisioning/plugins/sample.yaml
/usr/share/grafana/conf/provisioning/sample
/usr/share/grafana/conf/provisioning/sample/dashboard-v1.json
/usr/share/grafana/conf/provisioning/sample/sample-playlist.json
/usr/share/grafana/conf/provisioning/sample/dashboard-v2.json
/usr/share/grafana/conf/provisioning/sample/folder-A
/usr/share/grafana/conf/provisioning/sample/folder-A/folder-B
/usr/share/grafana/conf/provisioning/sample/folder-A/folder-B/dashboard-nested.json
/usr/share/grafana/conf/provisioning/sample/dashboard-classic.json
/usr/share/grafana/conf/provisioning/access-control
/usr/share/grafana/conf/provisioning/access-control/sample.yaml
/usr/share/grafana/conf/provisioning/datasources
/usr/share/grafana/conf/provisioning/datasources/sample.yaml
/usr/share/grafana/conf/provisioning/dashboards
/usr/share/grafana/conf/provisioning/dashboards/sample.yaml
/usr/share/grafana/conf/ldap_multiple.toml
/usr/share/grafana/Dockerfile
/usr/share/grafana/docs
/usr/share/grafana/bin
/usr/share/grafana/bin/grafana-cli
/usr/share/grafana/bin/grafana-server
/usr/share/grafana/bin/grafana
/usr/share/grafana/README.md
/usr/share/grafana/public
/usr/share/grafana/tools
/usr/share/grafana/tools/zoneinfo.zip
/usr/share/grafana/NOTICE.md
/usr/share/grafana/npm-artifacts
/usr/share/grafana/npm-artifacts/@grafana-e2e-selectors-v12.0.2+security-01.tgz
/usr/share/grafana/npm-artifacts/@grafana-prometheus-v12.0.2+security-01.tgz
/usr/share/grafana/npm-artifacts/@grafana-ui-v12.0.2+security-01.tgz
/usr/share/grafana/npm-artifacts/@grafana-runtime-v12.0.2+security-01.tgz
/usr/share/grafana/npm-artifacts/@grafana-data-v12.0.2+security-01.tgz
/usr/share/grafana/npm-artifacts/@grafana-schema-v12.0.2+security-01.tgz
/usr/share/grafana/npm-artifacts/@grafana-flamegraph-v12.0.2+security-01.tgz
/usr/share/grafana/packaging
/usr/share/grafana/packaging/deb
/usr/share/grafana/packaging/deb/systemd
/usr/share/grafana/packaging/deb/systemd/grafana-server.service
/usr/share/grafana/packaging/deb/default
/usr/share/grafana/packaging/deb/default/grafana-server
/usr/share/grafana/packaging/deb/control
/usr/share/grafana/packaging/deb/control/prerm
/usr/share/grafana/packaging/deb/control/postinst
/usr/share/grafana/packaging/deb/init.d
/usr/share/grafana/packaging/deb/init.d/grafana-server
/usr/share/grafana/packaging/docker
/usr/share/grafana/packaging/docker/custom
/usr/share/grafana/packaging/docker/custom/Dockerfile
/usr/share/grafana/packaging/docker/push_to_docker_hub.sh
/usr/share/grafana/packaging/docker/README.md
/usr/share/grafana/packaging/docker/build.sh
/usr/share/grafana/packaging/docker/run.sh
/usr/share/grafana/packaging/rpm
/usr/share/grafana/packaging/rpm/systemd
/usr/share/grafana/packaging/rpm/systemd/grafana-server.service
/usr/share/grafana/packaging/rpm/sysconfig
/usr/share/grafana/packaging/rpm/sysconfig/grafana-server
/usr/share/grafana/packaging/rpm/control
/usr/share/grafana/packaging/rpm/control/posttrans
/usr/share/grafana/packaging/rpm/control/postinst
/usr/share/grafana/packaging/wrappers
/usr/share/grafana/packaging/wrappers/grafana-cli
/usr/share/grafana/packaging/wrappers/grafana-server
/usr/share/grafana/packaging/wrappers/grafana
/usr/share/grafana/plugins-bundled
/usr/share/grafana/LICENSE
/usr/share/grafana/VERSION
/usr/sbin
/usr/sbin/grafana-cli
/usr/sbin/grafana-server
/etc
/etc/default
/etc/default/grafana-server
/etc/init.d
/etc/init.d/grafana-server
/etc/grafana

この方法だと、Grafanaはsystemdのユニットとして登録されます。

$ sudo systemctl status grafana-server
○ grafana-server.service - Grafana instance
     Loaded: loaded (/usr/lib/systemd/system/grafana-server.service; disabled; preset: enabled)
     Active: inactive (dead)
       Docs: http://docs.grafana.org

Start the Grafana server | Grafana documentation

自動起動を有効化。

$ sudo systemctl enable grafana-server
Synchronizing state of grafana-server.service with SysV service script with /usr/lib/systemd/systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable grafana-server
Created symlink /etc/systemd/system/multi-user.target.wants/grafana-server.service → /usr/lib/systemd/system/grafana-server.service.

起動。

$ sudo systemctl start grafana-server

確認。

● grafana-server.service - Grafana instance
     Loaded: loaded (/usr/lib/systemd/system/grafana-server.service; enabled; preset: enabled)
     Active: active (running) since Mon 2025-07-21 06:03:01 UTC; 15s ago
       Docs: http://docs.grafana.org
   Main PID: 2862 (grafana)
      Tasks: 15 (limit: 9486)
     Memory: 119.0M (peak: 138.3M)
        CPU: 5.701s
     CGroup: /system.slice/grafana-server.service
             └─2862 /usr/share/grafana/bin/grafana server --config=/etc/grafana/grafana.ini --pidfile=/run/grafana/grafana-server.pid --packaging=deb cfg:default.paths.logs>

Jul 21 06:03:14 server grafana[2862]: logger=plugin.backgroundinstaller t=2025-07-21T06:03:14.277059629Z level=info msg="Installing plugin" pluginId=grafana-metricsdrilldow>
Jul 21 06:03:15 server grafana[2862]: logger=plugin.installer t=2025-07-21T06:03:15.022715241Z level=info msg="Installing plugin" pluginId=grafana-metricsdrilldown-app vers>
Jul 21 06:03:15 server grafana[2862]: logger=installer.fs t=2025-07-21T06:03:15.069588484Z level=info msg="Downloaded and extracted grafana-metricsdrilldown-app v1.0.6 zip >
Jul 21 06:03:15 server grafana[2862]: logger=plugins.registration t=2025-07-21T06:03:15.082919143Z level=info msg="Plugin registered" pluginId=grafana-metricsdrilldown-app
Jul 21 06:03:15 server grafana[2862]: logger=plugin.backgroundinstaller t=2025-07-21T06:03:15.082960259Z level=info msg="Plugin successfully installed" pluginId=grafana-met>
Jul 21 06:03:15 server grafana[2862]: logger=plugin.backgroundinstaller t=2025-07-21T06:03:15.082984108Z level=info msg="Installing plugin" pluginId=grafana-lokiexplore-app>
Jul 21 06:03:16 server grafana[2862]: logger=plugin.installer t=2025-07-21T06:03:16.375755489Z level=info msg="Installing plugin" pluginId=grafana-lokiexplore-app version=
Jul 21 06:03:16 server grafana[2862]: logger=installer.fs t=2025-07-21T06:03:16.469040956Z level=info msg="Downloaded and extracted grafana-lokiexplore-app v1.0.22 zip succ>
Jul 21 06:03:16 server grafana[2862]: logger=plugins.registration t=2025-07-21T06:03:16.492094433Z level=info msg="Plugin registered" pluginId=grafana-lokiexplore-app
Jul 21 06:03:16 server grafana[2862]: logger=plugin.backgroundinstaller t=2025-07-21T06:03:16.49213494Z level=info msg="Plugin successfully installed" pluginId=grafana-loki>

起動したら、http://[Grafanaが動作しているサーバー]:3000にアクセスするとWeb UIが見れます。

デフォルトのユーザーはadmin、パスワードもadminですが、初回ログイン時に変更を求められます。

Sign in to Grafana | Grafana documentation

停止。

$ sudo systemctl stop grafana-server

設定ファイルのデフォルト値は/usr/share/grafana/conf/defaults.iniに書かれています。

ユーザーが設定するのは、パッケージインストールした場合は/etc/grafana/grafana.iniファイルになります。

If you installed Grafana using the deb or RPM packages, then your configuration file is located at /etc/grafana/grafana.ini and a separate custom.ini is not used.

Configure Grafana | Grafana documentation

ディレクトリー構成などはドキュメントにないようですが、こちらの設定内容から見るようです。

systemdで管理されている場合は、ユニット定義も見ておいた方がよさそうですね。

$ sudo systemctl cat grafana-server
# /usr/lib/systemd/system/grafana-server.service
[Unit]
Description=Grafana instance
Documentation=http://docs.grafana.org
Wants=network-online.target
After=network-online.target
After=postgresql.service mariadb.service mysql.service influxdb.service

[Service]
EnvironmentFile=/etc/default/grafana-server
User=grafana
Group=grafana
Type=simple
Restart=on-failure
WorkingDirectory=/usr/share/grafana
RuntimeDirectory=grafana
RuntimeDirectoryMode=0750
ExecStart=/usr/share/grafana/bin/grafana server                                     \
                            --config=${CONF_FILE}                                   \
                            --pidfile=${PID_FILE_DIR}/grafana-server.pid            \
                            --packaging=deb                                         \
                            cfg:default.paths.logs=${LOG_DIR}                       \
                            cfg:default.paths.data=${DATA_DIR}                      \
                            cfg:default.paths.plugins=${PLUGINS_DIR}                \
                            cfg:default.paths.provisioning=${PROVISIONING_CFG_DIR}

LimitNOFILE=10000
TimeoutStopSec=20
CapabilityBoundingSet=
DeviceAllow=
LockPersonality=true
MemoryDenyWriteExecute=false
NoNewPrivileges=true
PrivateDevices=true
PrivateTmp=true
ProtectClock=true
ProtectControlGroups=true
ProtectHome=true
ProtectHostname=true
ProtectKernelLogs=true
ProtectKernelModules=true
ProtectKernelTunables=true
ProtectProc=invisible
ProtectSystem=full
RemoveIPC=true
RestrictAddressFamilies=AF_INET AF_INET6 AF_UNIX
RestrictNamespaces=true
RestrictRealtime=true
RestrictSUIDSGID=true
SystemCallArchitectures=native
UMask=0027

[Install]
WantedBy=multi-user.target

環境変数で設定されている内容もあり、ログは/var/log/grafanaディレクトリー配下に、
データは/var/lib/grafanaディレクトリー配下にありそうです。

/etc/default/grafana-server

GRAFANA_USER=grafana

GRAFANA_GROUP=grafana

GRAFANA_HOME=/usr/share/grafana

LOG_DIR=/var/log/grafana

DATA_DIR=/var/lib/grafana

MAX_OPEN_FILES=10000

CONF_DIR=/etc/grafana

CONF_FILE=/etc/grafana/grafana.ini

RESTART_ON_UPGRADE=true

PLUGINS_DIR=/var/lib/grafana/plugins

PROVISIONING_CFG_DIR=/etc/grafana/provisioning

# Only used on systemd systems
PID_FILE_DIR=/run/grafana
debパッケージからインストールする

次はdebパッケージからインストールしてみます。

Install Grafana on Debian or Ubuntu / Install Grafana using a deb package

手順としては、こちらのページに従うことになります。

Download Grafana | Grafana Labs

依存パッケージのインストール。

$ sudo apt install adduser libfontconfig1 musl

OSS版のdebパッケージをダウンロードしてインストール。

$ curl -LO https://dl.grafana.com/oss/release/grafana_12.0.2+security~01_amd64.deb
$ sudo dpkg -i grafana_12.0.2+security~01_amd64.deb

インストールされるものとしては、aptリポジトリーが追加されないだけで、内容としてはaptリポジトリーからインストール
したものと同じです。systemdのユニット定義なども含まれます。

なので、説明は省略します。

スタンドアロンバイナリーからインストールする

最後はスタンドアロンバイナリーからインストールします。

こちらも手順は以下のページを見ます。

Download Grafana | Grafana Labs

$ curl -LO https://dl.grafana.com/oss/release/grafana-12.0.2+security-01.linux-amd64.tar.gz
$ tar xf grafana-12.0.2+security-01.linux-amd64.tar.gz

展開したディレクトリー内に移動。

$ cd grafana-v12.0.2+security-01

含まれているファイルはこんな感じですね。

$ find -type f | grep -vE './(public|docs|storybook)/'
./Dockerfile
./conf/provisioning/dashboards/sample.yaml
./conf/provisioning/plugins/sample.yaml
./conf/provisioning/access-control/sample.yaml
./conf/provisioning/datasources/sample.yaml
./conf/provisioning/alerting/sample.yaml
./conf/provisioning/sample/folder-A/folder-B/dashboard-nested.json
./conf/provisioning/sample/dashboard-v1.json
./conf/provisioning/sample/dashboard-v2.json
./conf/provisioning/sample/sample-playlist.json
./conf/provisioning/sample/dashboard-classic.json
./conf/sample.ini
./conf/defaults.ini
./conf/ldap_multiple.toml
./conf/ldap.toml
./packaging/docker/custom/Dockerfile
./packaging/docker/run.sh
./packaging/docker/push_to_docker_hub.sh
./packaging/docker/README.md
./packaging/docker/build.sh
./packaging/deb/control/prerm
./packaging/deb/control/postinst
./packaging/deb/init.d/grafana-server
./packaging/deb/systemd/grafana-server.service
./packaging/deb/default/grafana-server
./packaging/wrappers/grafana-server
./packaging/wrappers/grafana-cli
./packaging/wrappers/grafana
./packaging/rpm/control/posttrans
./packaging/rpm/control/postinst
./packaging/rpm/systemd/grafana-server.service
./packaging/rpm/sysconfig/grafana-server
./LICENSE
./npm-artifacts/@grafana-e2e-selectors-v12.0.2+security-01.tgz
./npm-artifacts/@grafana-ui-v12.0.2+security-01.tgz
./npm-artifacts/@grafana-prometheus-v12.0.2+security-01.tgz
./npm-artifacts/@grafana-runtime-v12.0.2+security-01.tgz
./npm-artifacts/@grafana-flamegraph-v12.0.2+security-01.tgz
./npm-artifacts/@grafana-data-v12.0.2+security-01.tgz
./npm-artifacts/@grafana-schema-v12.0.2+security-01.tgz
./VERSION
./README.md
./tools/zoneinfo.zip
./NOTICE.md
./bin/grafana-server
./bin/grafana-cli
./bin/grafana

バージョン確認。

$ bin/grafana --version
grafana version 12.0.2+security-01

起動。

$ bin/grafana server


## こちらでもよさそう
$ bin/grafana-server

Start the Grafana server | Grafana documentation

このインストール方法では、フォアグラウンドでGrafanaが起動します。

また設定ファイルはconf/custom.iniに書くようです。デフォルト値がconf/defaults.iniなのは同じですね。

Configure Grafana | Grafana documentation

こんなところでしょうか。

おわりに

Ubuntu Linux 24.04 LTSにGrafana 12をインストールしてみました。

どちらかというとGrafanaに関するドキュメントを見ている時間の方が長かったのですが、Grafanaについてあらためて
情報を見返せたのでこれはこれでよかったかなと。

今後、周辺のプロジェクトも見ていくとしましょう。




以上の内容はhttps://kazuhira-r.hatenablog.com/entry/2025/07/21/154216より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14