netdataをアップデートしようとしたらエラーになった

netdata でサーバの状態観察をしているのだが、アップデート要求が出ていた

OracleLinux8環境でセットアップしており、下記のパッケージでインストールされていた。

$ rpm -qa|grep netdata
netdata-conf-1.37.1-1.el8.noarch
netdata-repo-edge-1-2.noarch
netdata-data-1.37.1-1.el8.noarch
netdata-1.37.1-1.el8.aarch64
$ netdata -W buildinfo
Version: netdata v1.37.1
Configure options:  '--build=aarch64-redhat-linux-gnu' '--host=aarch64-redhat-linux-gnu' '--program-prefix=' '--disable-dependency-tracking' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/var/lib' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--enable-plugin-freeipmi' '--enable-plugin-cups' '--with-bundled-libJudy' '--with-zlib' '--with-math' '--with-user=netdata' 'build_alias=aarch64-redhat-linux-gnu' 'host_alias=aarch64-redhat-linux-gnu' 'CFLAGS=-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection' 'LDFLAGS=-Wl,-z,relro  -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' 'CXXFLAGS=-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection' 'PKG_CONFIG_PATH=:/usr/lib64/pkgconfig:/usr/share/pkgconfig'
Install type: custom
Features:
    dbengine:                   YES
    Native HTTPS:               YES
    Netdata Cloud:              YES
    ACLK:                       YES
    TLS Host Verification:      YES
    Machine Learning:           YES
    Stream Compression:         NO
Libraries:
    protobuf:                YES (system)
    jemalloc:                NO
    JSON-C:                  YES
    libcap:                  YES
    libcrypto:               YES
    libm:                    YES
    tcalloc:                 NO
    zlib:                    YES
Plugins:
    apps:                    YES
    cgroup Network Tracking: YES
    CUPS:                    YES
    EBPF:                    NO
    IPMI:                    YES
    NFACCT:                  NO
    perf:                    YES
    slabinfo:                YES
    Xen:                     NO
    Xen VBD Error Tracking:  NO
Exporters:
    AWS Kinesis:             NO
    GCP PubSub:              NO
    MongoDB:                 NO
    Prometheus Remote Write: YES
Debug/Developer Features:
    Trace Allocations:       NO
$

とりあえずお知らせ記載の「wget -O /tmp/netdata-kickstart.sh https://my-netdata.io/kickstart.sh && sh /tmp/netdata-kickstart.sh 」を実行したところエラーとなった

# wget -O /tmp/netdata-kickstart.sh https://my-netdata.io/kickstart.sh && sh /tmp/netdata-kickstart.sh
--2023-06-26 11:17:16--  https://my-netdata.io/kickstart.sh
Resolving my-netdata.io (my-netdata.io)... 2606:4700:3031::6815:d9f, 2606:4700:3036::ac43:9cc0, 172.67.156.192, ...
Connecting to my-netdata.io (my-netdata.io)|2606:4700:3031::6815:d9f|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/octet-stream]
Saving to: ‘/tmp/netdata-kickstart.sh’

/tmp/netdata-kickst     [ <=>                ]  81.38K  --.-KB/s    in 0.01s

2023-06-26 11:17:17 (6.31 MB/s) - ‘/tmp/netdata-kickstart.sh’ saved [83335]


 --- Using /tmp/netdata-kickstart-UrT2UNzClU as a temporary directory. ---
 --- Checking for existing installations of Netdata... ---
[/tmp/netdata-kickstart-UrT2UNzClU]# sh -c cat "//etc/netdata/.install-type" > "/tmp/netdata-kickstart-UrT2UNzClU/install-type"
 OK

 ABORTED  Found an existing netdata install at /, but the install type is 'custom', which is not supported by this script, refusing to proceed.

For community support, you can connect with us on:
  - GitHub: https://github.com/netdata/netdata/discussions
  - Discord: https://discord.gg/5ygS846fR6
  - Our community forums: https://community.netdata.cloud/
[/root]# rm -rf /tmp/netdata-kickstart-UrT2UNzClU
 OK

#

この場合、Reinstall Netdata にある–reinstallオプションつきを試せ、とのことだったので実行

# wget -O /tmp/netdata-kickstart.sh https://my-netdata.io/kickstart.sh && sh /tmp/netdata-kickstart.sh --reinstall
--2023-06-26 11:17:34--  https://my-netdata.io/kickstart.sh
Resolving my-netdata.io (my-netdata.io)... 2606:4700:3036::ac43:9cc0, 2606:4700:3031::6815:d9f, 104.21.13.159, ...
Connecting to my-netdata.io (my-netdata.io)|2606:4700:3036::ac43:9cc0|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/octet-stream]
Saving to: ‘/tmp/netdata-kickstart.sh’

/tmp/netdata-kickst     [ <=>                ]  81.38K  --.-KB/s    in 0.01s

2023-06-26 11:17:34 (6.37 MB/s) - ‘/tmp/netdata-kickstart.sh’ saved [83335]


 --- Using /tmp/netdata-kickstart-J62Yweer7w as a temporary directory. ---
 --- Attempting to install using native packages... ---
 --- Repository configuration is already present, attempting to install netdata. ---
There was an error communicating with OSMS server.
OSMS based repositories will be disabled.
<ProtocolError for http://127.0.0.1:9003/XMLRPC: 500 500 Server Error: Internal Server Error for url: http://127.0.0.1:9003/XMLRPC>
 WARNING  Could not find a usable native package for ol on aarch64.

 --- Attempting to uninstall repository configuration package. ---
[/tmp/netdata-kickstart-J62Yweer7w]# env dnf remove netdata-repo-edge
There was an error communicating with OSMS server.
OSMS based repositories will be disabled.
<ProtocolError for http://127.0.0.1:9003/XMLRPC: 500 500 Server Error: Internal Server Error for url: http://127.0.0.1:9003/XMLRPC>
Dependencies resolved.
================================================================================
 Package                  Architecture  Version      Repository            Size
================================================================================
Removing:
 netdata-repo-edge        noarch        1-2          @@commandline        580

Transaction Summary
================================================================================
Remove  1 Package

Freed space: 580
Is this ok [y/N]: y
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                        1/1
  Erasing          : netdata-repo-edge-1-2.noarch                           1/1
warning: file /etc/yum.repos.d/netdata-edge.repo: remove failed: No such file or directory

  Verifying        : netdata-repo-edge-1-2.noarch                           1/1

Removed:
  netdata-repo-edge-1-2.noarch

Complete!
 OK

 WARNING  Could not install native binary packages, falling back to alternative installation method.

[/tmp/netdata-kickstart-J62Yweer7w]# sh -c /bin/curl https://github.com/netdata/netdata-nightlies/releases/latest -s -L -I -o /dev/null -w '%{url_effective}' | grep -o '[^/]*$'
 OK

 --- Attempting to install using static build... ---
[/tmp/netdata-kickstart-J62Yweer7w]# /bin/curl --fail -q -sSL --connect-timeout 10 --retry 3 --output /tmp/netdata-kickstart-J62Yweer7w/netdata-aarch64-latest.gz.run https://github.com/netdata/netdata-nightlies/releases/download/v1.40.0-38-nightly/netdata-aarch64-latest.gz.run
 OK

[/tmp/netdata-kickstart-J62Yweer7w]# /bin/curl --fail -q -sSL --connect-timeout 10 --retry 3 --output /tmp/netdata-kickstart-J62Yweer7w/sha256sum.txt https://github.com/netdata/netdata-nightlies/releases/download/v1.40.0-38-nightly/sha256sums.txt
 OK

 --- Installing netdata ---
[/tmp/netdata-kickstart-J62Yweer7w]# sh /tmp/netdata-kickstart-J62Yweer7w/netdata-aarch64-latest.gz.run --

  ^
  |.-.   .-.   .-.   .-.   .  netdata
  |   '-'   '-'   '-'   '-'   real-time performance monitoring, done right!
  +----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+--->

  (C) Copyright 2017-2023, Costa Tsaousis
  All rights reserved
  Released under GPL v3+

  You are about to install netdata to this system.
  netdata will be installed at:

                    /opt/netdata

  The following changes will be made to your system:

  # USERS / GROUPS
  User 'netdata' and group 'netdata' will be added, if not present.

  # LOGROTATE
  This file will be installed if logrotate is present.

   - /etc/logrotate.d/netdata

  # SYSTEM INIT
  If a supported init system is detected, appropriate configuration will be
  installed to allow Netdata to run as a system service. We currently support
  systemd, OpenRC, LSB init scripts, and traditional init.d setups, as well as
  having experimental support for runit.


  This package can also update a netdata installation that has been
  created with another version of it.

  Your netdata configuration will be retained.
  After installation, netdata will be (re-)started.

  netdata re-distributes a lot of open source software components.
  Check its full license at:
  https://github.com/netdata/netdata/blob/master/LICENSE
Please type y to accept, n otherwise: y
Creating directory /opt/netdata
Verifying archive integrity...  100%   MD5 checksums are OK. All good.
Uncompressing netdata, the real-time performance and health monitoring system    100%
 --- Attempt to create user/group netdata/netadata ---
Group 'netdata' already exists.
User 'netdata' already exists.
 --- Add user netdata to required user groups ---
Group 'docker' does not exist.
User 'netdata' is already in group 'nginx'.
Group 'varnish' does not exist.
Group 'haproxy' does not exist.
User 'netdata' is already in group 'adm'.
Group 'nsd' does not exist.
Group 'proxy' does not exist.
Group 'squid' does not exist.
Group 'ceph' does not exist.
User 'netdata' is already in group 'nobody'.
Group 'I2C' does not exist.
 --- Install logrotate configuration for netdata ---
[/opt/netdata]# chmod 644 /etc/logrotate.d/netdata
 OK  ''

 --- Telemetry configuration ---
You can opt out from anonymous statistics via the --disable-telemetry option, or by creating an empty file /opt/netdata/etc/netdata/.opt-out-from-anonymous-statistics

 --- Install netdata at system init ---
Installing systemd service...
 --- Install (but not enable) netdata updater tool ---
cat: /system/systemd/netdata-updater.timer: No such file or directory
cat: /system/systemd/netdata-updater.service: No such file or directory
Update script is located at /opt/netdata/usr/libexec/netdata/netdata-updater.sh

 --- creating quick links ---
[/opt/netdata]# ln -s bin sbin
 OK  ''

[/opt/netdata/usr]# ln -s ../bin bin
 OK  ''

[/opt/netdata/usr]# ln -s ../bin sbin
 OK  ''

[/opt/netdata/usr]# ln -s . local
 OK  ''

[/opt/netdata]# ln -s etc/netdata netdata-configs
 OK  ''

[/opt/netdata]# ln -s usr/share/netdata/web netdata-web-files
 OK  ''

[/opt/netdata]# ln -s usr/libexec/netdata netdata-plugins
 OK  ''

[/opt/netdata]# ln -s var/lib/netdata netdata-dbs
 OK  ''

[/opt/netdata]# ln -s var/cache/netdata netdata-metrics
 OK  ''

[/opt/netdata]# ln -s var/log/netdata netdata-logs
 OK  ''

[/opt/netdata/etc/netdata]# rm orig
 OK  ''

[/opt/netdata/etc/netdata]# ln -s ../../usr/lib/netdata/conf.d orig
 OK  ''

 --- fix permissions ---
[/opt/netdata]# chmod g+rx,o+rx /opt
 OK  ''

[/opt/netdata]# find /opt/netdata -type d -exec chmod go+rx {} +
 OK  ''

[/opt/netdata]# chown -R netdata:netdata /opt/netdata/var
 OK  ''

 --- changing plugins ownership and permissions ---
[/opt/netdata]# chown root:netdata usr/libexec/netdata/plugins.d/apps.plugin
 OK  ''

[/opt/netdata]# chown root:netdata usr/libexec/netdata/plugins.d/perf.plugin
 OK  ''

[/opt/netdata]# chown root:netdata usr/libexec/netdata/plugins.d/slabinfo.plugin
 OK  ''

[/opt/netdata]# chown root:netdata usr/libexec/netdata/plugins.d/debugfs.plugin
 OK  ''

[/opt/netdata]# chown root:netdata usr/libexec/netdata/plugins.d/ioping
 OK  ''

[/opt/netdata]# chown root:netdata usr/libexec/netdata/plugins.d/cgroup-network
 OK  ''

[/opt/netdata]# chown root:netdata usr/libexec/netdata/plugins.d/nfacct.plugin
 OK  ''

[/opt/netdata]# chown root:netdata usr/libexec/netdata/plugins.d/python.d.plugin
 OK  ''

[/opt/netdata]# chown root:netdata usr/libexec/netdata/plugins.d/charts.d.plugin
 OK  ''

[/opt/netdata]# chown root:netdata usr/libexec/netdata/plugins.d/go.d.plugin
 OK  ''

[/opt/netdata]# chown root:netdata usr/libexec/netdata/plugins.d/ioping.plugin
 OK  ''

[/opt/netdata]# chown root:netdata usr/libexec/netdata/plugins.d/cgroup-network-helper.sh
 OK  ''

[/opt/netdata]# setcap cap_dac_read_search,cap_sys_ptrace=ep usr/libexec/netdata/plugins.d/apps.plugin
 OK  ''

[/opt/netdata]# setcap cap_dac_read_search=ep usr/libexec/netdata/plugins.d/slabinfo.plugin
 OK  ''

[/opt/netdata]# setcap cap_dac_read_search=ep usr/libexec/netdata/plugins.d/debugfs.plugin
 OK  ''

[/opt/netdata]# setcap cap_sys_admin=ep usr/libexec/netdata/plugins.d/perf.plugin
 OK  ''

[/opt/netdata]# setcap cap_net_admin,cap_net_raw=eip usr/libexec/netdata/plugins.d/go.d.plugin
 OK  ''

[/opt/netdata]# chmod 4750 usr/libexec/netdata/plugins.d/ioping
 OK  ''

[/opt/netdata]# chmod 4750 usr/libexec/netdata/plugins.d/cgroup-network
 OK  ''

[/opt/netdata]# chmod 4750 usr/libexec/netdata/plugins.d/nfacct.plugin
 OK  ''

Configure TLS certificate paths
Using /etc/pki/tls for TLS configuration and certificates
Save install options
 --- starting netdata ---
 --- Restarting netdata instance ---

Stopping all netdata threads
[/opt/netdata]# stop_all_netdata
 OK  ''

Starting netdata using command 'systemctl start netdata'
[/opt/netdata]# systemctl start netdata
 OK  ''

Downloading default configuration from netdata...
[/opt/netdata]# /bin/curl -sSL --connect-timeout 10 --retry 3 http://localhost:19999/netdata.conf
 OK  ''

[/opt/netdata]# mv /opt/netdata/etc/netdata/netdata.conf.new /opt/netdata/etc/netdata/netdata.conf
 OK  ''

 OK  New configuration saved for you to edit at /opt/netdata/etc/netdata/netdata.conf


  ^
  |.-.   .-.   .-.   .-.   .-.   .  netdata  .-.   .-.   .-.   .-.   .-.   .-
  |   '-'   '-'   '-'   '-'   '-'               '-'   '-'   '-'   '-'   '-'
  +----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+--->

[/opt/netdata]# chmod 0644 /opt/netdata/etc/netdata/netdata.conf
 OK  ''

 OK

[/tmp/netdata-kickstart-J62Yweer7w]# sh -c cat "/opt/netdata/etc/netdata/.install-type" > "/tmp/netdata-kickstart-J62Yweer7w/install-type"
 OK

[/tmp/netdata-kickstart-J62Yweer7w]# chown 0:0 /tmp/netdata-kickstart-J62Yweer7w/install-type
 OK

[/tmp/netdata-kickstart-J62Yweer7w]# chown netdata:netdata /tmp/netdata-kickstart-J62Yweer7w/install-type
 OK

[/tmp/netdata-kickstart-J62Yweer7w]# cp /tmp/netdata-kickstart-J62Yweer7w/install-type /opt/netdata/etc/netdata/.install-type
 OK

[/tmp/netdata-kickstart-J62Yweer7w]# test -x /opt/netdata/usr/libexec/netdata/netdata-updater.sh
 OK

[/tmp/netdata-kickstart-J62Yweer7w]# grep -q \-\-enable-auto-updates /opt/netdata/usr/libexec/netdata/netdata-updater.sh
 OK

[/tmp/netdata-kickstart-J62Yweer7w]# /opt/netdata/usr/libexec/netdata/netdata-updater.sh --enable-auto-updates
Mon Jun 26 11:18:13 JST 2023 : INFO: netdata-updater.sh:  Auto-updating has been ENABLED through cron, updater script linked to /etc/cron.daily/netdata-updater\n
Mon Jun 26 11:18:13 JST 2023 : INFO: netdata-updater.sh:  If the update process fails and you have email notifications set up correctly for cron on this system, you should receive an email notification of the failure.
Mon Jun 26 11:18:13 JST 2023 : INFO: netdata-updater.sh:  Successful updates will not send an email.
 OK

Successfully installed the Netdata Agent.

The following non-fatal warnings or errors were encountered:

  - Could not find a usable native package for ol on aarch64.
  - Could not install native binary packages, falling back to alternative installation method.

Official documentation can be found online at https://learn.netdata.cloud/docs/.

Looking to monitor all of your infrastructure with Netdata? Check out Netdata Cloud at https://app.netdata.cloud.

Join our community and connect with us on:
  - GitHub: https://github.com/netdata/netdata/discussions
  - Discord: https://discord.gg/5ygS846fR6
  - Our community forums: https://community.netdata.cloud/
[/root]# rm -rf /tmp/netdata-kickstart-J62Yweer7w
 OK

#

が・・・インストールされているパッケージを確認してみると、元々入ってきたnetdata v1.37.1の他に/opt/netdata以下にv1.40.0-38-gd548db0f1もある、という状態に…

# rpm -qa|grep netdata
netdata-conf-1.37.1-1.el8.noarch
netdata-data-1.37.1-1.el8.noarch
netdata-1.37.1-1.el8.aarch64
# netdata -W buildinfo
Version: netdata v1.37.1
Configure options:  '--build=aarch64-redhat-linux-gnu' '--host=aarch64-redhat-linux-gnu' '--program-prefix=' '--disable-dependency-tracking' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/var/lib' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--enable-plugin-freeipmi' '--enable-plugin-cups' '--with-bundled-libJudy' '--with-zlib' '--with-math' '--with-user=netdata' 'build_alias=aarch64-redhat-linux-gnu' 'host_alias=aarch64-redhat-linux-gnu' 'CFLAGS=-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection' 'LDFLAGS=-Wl,-z,relro  -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' 'CXXFLAGS=-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection' 'PKG_CONFIG_PATH=:/usr/lib64/pkgconfig:/usr/share/pkgconfig'
Install type: custom
Features:
    dbengine:                   YES
    Native HTTPS:               YES
    Netdata Cloud:              YES
    ACLK:                       YES
    TLS Host Verification:      YES
    Machine Learning:           YES
    Stream Compression:         NO
Libraries:
    protobuf:                YES (system)
    jemalloc:                NO
    JSON-C:                  YES
    libcap:                  YES
    libcrypto:               YES
    libm:                    YES
    tcalloc:                 NO
    zlib:                    YES
Plugins:
    apps:                    YES
    cgroup Network Tracking: YES
    CUPS:                    YES
    EBPF:                    NO
    IPMI:                    YES
    NFACCT:                  NO
    perf:                    YES
    slabinfo:                YES
    Xen:                     NO
    Xen VBD Error Tracking:  NO
Exporters:
    AWS Kinesis:             NO
    GCP PubSub:              NO
    MongoDB:                 NO
    Prometheus Remote Write: YES
Debug/Developer Features:
    Trace Allocations:       NO
# /opt/netdata/bin/netdata -W buildinfo
Version: netdata v1.40.0-38-gd548db0f1
Configure options:  '--prefix=/opt/netdata/usr' '--sysconfdir=/opt/netdata/etc' '--localstatedir=/opt/netdata/var' '--libexecdir=/opt/netdata/usr/libexec' '--libdir=/opt/netdata/usr/lib' '--with-zlib' '--with-math' '--with-user=netdata' '--enable-cloud' '--without-bundled-protobuf' '--disable-dependency-tracking' 'CFLAGS=-static -O2 -I/openssl-static/include -I/libnetfilter-acct-static/include/libnetfilter_acct -I/usr/include/libmnl -pipe' 'LDFLAGS=-static -L/openssl-static/lib -L/libnetfilter-acct-static/lib -lnetfilter_acct -L/usr/lib -lmnl' 'PKG_CONFIG=pkg-config --static' 'PKG_CONFIG_PATH=/openssl-static/lib/pkgconfig:/libnetfilter-acct-static/lib/pkgconfig:/usr/lib/pkgconfig'
Install type: kickstart-static
    Binary architecture: aarch64
Features:
    dbengine:                   YES
    Native HTTPS:               YES
    Netdata Cloud:              YES
    ACLK:                       YES
    TLS Host Verification:      YES
    Machine Learning:           YES
    Stream Compression:         YES
    HTTPD (h2o):                YES
Libraries:
    protobuf:                YES (system)
    jemalloc:                NO
    JSON-C:                  YES
    libcap:                  NO
    libcrypto:               YES
    libm:                    YES
    tcalloc:                 NO
    zlib:                    YES
Plugins:
    apps:                    YES
    cgroup Network Tracking: YES
    CUPS:                    NO
    debugfs:                 YES
    EBPF:                    NO
    IPMI:                    NO
    NFACCT:                  YES
    perf:                    YES
    slabinfo:                YES
    Xen:                     NO
    Xen VBD Error Tracking:  NO
Exporters:
    AWS Kinesis:             NO
    GCP PubSub:              NO
    MongoDB:                 NO
    Prometheus Remote Write: YES
Debug/Developer Features:
    Trace Allocations:       NO
#

起動しているプロセスは /opt/netdata以下のもののようなので

# ps -ef|grep netdata
netdata  1805060       1  0 11:17 ?        00:00:04 /opt/netdata/bin/srv/netdat  -P /run/netdata/netdata.pid -D
netdata  1805064 1805060  0 11:17 ?        00:00:00 /opt/netdata/bin/srv/netdat  --special-spawn-server
netdata  1805243 1805060  0 11:17 ?        00:00:00 bash /opt/netdata/usr/libexec/netdata/plugins.d/tc-qos-helper.sh 1
netdata  1805250 1805060  0 11:17 ?        00:00:04 /opt/netdata/usr/libexec/netdata/plugins.d/apps.plugin 1
netdata  1805253 1805060  0 11:17 ?        00:00:00 /opt/netdata/usr/libexec/netdata/plugins.d/debugfs.plugin 1
netdata  1805256 1805060  0 11:17 ?        00:00:01 /opt/netdata/usr/libexec/netdata/plugins.d/go.d.plugin 1
root     1805265 1805060  0 11:17 ?        00:00:00 /opt/netdata/usr/libexec/netdata/plugins.d/nfacct.plugin 1
root     1807528 1804248  0 11:26 pts/0    00:00:00 grep --color=auto netdata
#
# systemctl status netdata -l|cat
● netdata.service - Real time performance monitoring
   Loaded: loaded (/usr/lib/systemd/system/netdata.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2023-06-26 11:17:58 JST; 9min ago
  Process: 1805058 ExecStartPre=/bin/chown -R netdata /run/netdata (code=exited, status=0/SUCCESS)
  Process: 1805056 ExecStartPre=/bin/mkdir -p /run/netdata (code=exited, status=0/SUCCESS)
  Process: 1805054 ExecStartPre=/bin/chown -R netdata /opt/netdata/var/cache/netdata (code=exited, status=0/SUCCESS)
  Process: 1805053 ExecStartPre=/bin/mkdir -p /opt/netdata/var/cache/netdata (code=exited, status=0/SUCCESS)
 Main PID: 1805060 (netdata)
    Tasks: 69 (limit: 9094)
   Memory: 94.3M
   CGroup: /system.slice/netdata.service
           tq1805060 /opt/netdata/bin/srv/netdata -P /run/netdata/netdata.pid -D
           tq1805064 /opt/netdata/bin/srv/netdata --special-spawn-server
           tq1805243 bash /opt/netdata/usr/libexec/netdata/plugins.d/tc-qos-helper.sh 1
           tq1805250 /opt/netdata/usr/libexec/netdata/plugins.d/apps.plugin 1
           tq1805253 /opt/netdata/usr/libexec/netdata/plugins.d/debugfs.plugin 1
           tq1805256 /opt/netdata/usr/libexec/netdata/plugins.d/go.d.plugin 1
           mq1805265 /opt/netdata/usr/libexec/netdata/plugins.d/nfacct.plugin 1

Jun 26 11:17:58 oraclelinux7 netdata[1805060]: 2023-06-26 11:17:58: netdata INFO  : MAIN : Created file '/opt/netdata/var/lib/netdata/dbengine_multihost_size' to store the computed value
Jun 26 11:17:58 oraclelinux7 [1805250]: PROCFILE: Cannot open file '/opt/netdata/etc/netdata/apps_groups.conf'
Jun 26 11:17:58 oraclelinux7 [1805250]: Cannot read process groups configuration file '/opt/netdata/etc/netdata/apps_groups.conf'. Will try '/opt/netdata/usr/lib/netdata/conf.d/apps_groups.conf'
Jun 26 11:17:58 oraclelinux7 [1805250]: Loaded config file '/opt/netdata/usr/lib/netdata/conf.d/apps_groups.conf'
Jun 26 11:17:58 oraclelinux7 [1805250]: started on pid 1805250
Jun 26 11:17:58 oraclelinux7 [1805250]: set name of thread 1805268 to APPS_READER
Jun 26 11:17:58 oraclelinux7 [1805271]: no charts enabled - nothing to do.
Jun 26 11:17:59 oraclelinux7 [1805253]: Zswap is disabled
Jun 26 11:17:59 oraclelinux7 [1805250]: Using now_boottime_usec() for uptime (dt is 8 ms)
Jun 26 11:18:01 oraclelinux7 sudo[1805539]:  netdata : command not allowed ; TTY=unknown ; PWD=/opt/netdata/etc/netdata ; USER=root ; COMMAND=validate
#

ちなみに・・・CentOS 7環境でセットアップしていたやつも同様にエラー(wgetパッケージをインストールしていない環境なのでcurlで代用)

 # curl -O https://my-netdata.io/kickstart.sh
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 83335    0 83335    0     0   129k      0 --:--:-- --:--:-- --:--:--  128k
# bash kickstart.sh
kickstart.sh: line 34: cd: kickstart.sh: Not a directory

 --- Using /tmp/netdata-kickstart-gOQowVR9j7 as a temporary directory. ---
 --- Checking for existing installations of Netdata... ---
[/tmp/netdata-kickstart-gOQowVR9j7]# sh -c cat "//etc/netdata/.install-type" > "/tmp/netdata-kickstart-gOQowVR9j7/install-type"
 OK

 ABORTED  Found an existing netdata install at /, but the install type is 'custom', which is not supported by this script, refusing to proceed.

For community support, you can connect with us on:
  - GitHub: https://github.com/netdata/netdata/discussions
  - Discord: https://discord.gg/5ygS846fR6
  - Our community forums: https://community.netdata.cloud/
[/root]# rm -rf /tmp/netdata-kickstart-gOQowVR9j7
 OK

#

この環境は以下の設定だった

#  netdata -W buildinfo
Version: netdata v1.39.1
Configure options:  '--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu' '--program-prefix=' '--disable-dependency-tracking' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/var/lib' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--enable-plugin-freeipmi' '--with-bundled-protobuf' '--with-zlib' '--with-math' '--with-user=netdata' 'build_alias=x86_64-redhat-linux-gnu' 'host_alias=x86_64-redhat-linux-gnu' 'CFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1  -m64 -mtune=generic' 'LDFLAGS=-Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' 'CXXFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1  -m64 -mtune=generic' 'PKG_CONFIG_PATH=:/usr/lib64/pkgconfig:/usr/share/pkgconfig'
Install type: custom
Features:
    dbengine:                   YES
    Native HTTPS:               YES
    Netdata Cloud:              YES
    ACLK:                       YES
    TLS Host Verification:      YES
    Machine Learning:           YES
    Stream Compression:         NO
Libraries:
    protobuf:                YES (bundled)
    jemalloc:                NO
    JSON-C:                  YES
    libcap:                  YES
    libcrypto:               YES
    libm:                    YES
    tcalloc:                 NO
    zlib:                    YES
Plugins:
    apps:                    YES
    cgroup Network Tracking: YES
    CUPS:                    NO
    EBPF:                    NO
    IPMI:                    YES
    NFACCT:                  NO
    perf:                    YES
    slabinfo:                YES
    Xen:                     NO
    Xen VBD Error Tracking:  NO
Exporters:
    AWS Kinesis:             NO
    GCP PubSub:              NO
    MongoDB:                 NO
    Prometheus Remote Write: YES
Debug/Developer Features:
    Trace Allocations:       NO
# rpm -qa|grep netd
netdata-conf-1.39.1-1.el7.noarch
netdata-1.39.1-1.el7.x86_64
netdata-repo-edge-2-1.noarch
netdata-data-1.39.1-1.el7.noarch
#

で、こちらも–reinstallしてみた

# bash kickstart.sh --reinstall
kickstart.sh: line 34: cd: kickstart.sh: Not a directory

 --- Using /tmp/netdata-kickstart-jpMNGq7kbC as a temporary directory. ---
 --- Attempting to install using native packages... ---
 --- Repository configuration is already present, attempting to install netdata. ---
 --- Checking for libuv availability. ---
[/tmp/netdata-kickstart-jpMNGq7kbC]# env yum install netdata
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
epel/x86_64/metalink                                     | 7.0 kB     00:00
 * base: ftp.iij.ad.jp
 * epel: ftp.riken.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
base                                                     | 3.6 kB     00:00
epel                                                     | 4.7 kB     00:00
extras                                                   | 2.9 kB     00:00
netdata-edge/7/x86_64/signature                          |  687 B     00:00
netdata-edge/7/x86_64/signature                          | 3.0 kB     00:00 !!!
netdata-repoconfig/7/x86_64/signature                    |  687 B     00:00
netdata-repoconfig/7/x86_64/signature                    | 3.0 kB     00:00 !!!
updates                                                  | 2.9 kB     00:00
epel/x86_64/updateinfo         FAILED
https://ftp.riken.jp/Linux/fedora/epel/7/x86_64/repodata/8b4087cf1ec2a440644c52e203dac340e00f77c29e2c7aafec13fc82a187b882-updateinfo.xml.bz2: [Errno 14] HTTPS Error 404 - Not Found
Trying other mirror.
To address this issue please refer to the below wiki article

https://wiki.centos.org/yum-errors

If above article doesn't help to resolve this issue please use https://bugs.centos.org/.

epel/x86_64/primary_db         FAILED
https://ftp.riken.jp/Linux/fedora/epel/7/x86_64/repodata/ca38eb0f8ec9e2bd9401a853f021d0a10d110bbe72869ffbb8ae391881572ecb-primary.sqlite.bz2: [Errno 14] HTTPS Error 404 - Not Found
Trying other mirror.
epel/x86_64/primary_db         FAILED
http://ftp.iij.ad.jp/pub/linux/Fedora/epel/7/x86_64/repodata/ca38eb0f8ec9e2bd9401a853f021d0a10d110bbe72869ffbb8ae391881572ecb-primary.sqlite.bz2: [Errno 14] HTTP Error 404 - Not Found
Trying other mirror.
(1/5): netdata-repoconfig/7/x86_64/primary_db              | 2.5 kB   00:00
(2/5): netdata-edge/7/x86_64/primary_db                    | 122 kB   00:00
epel/x86_64/primary_db         FAILED
https://mirror-hnd.yuki.net.uk/fedora-epel/7/x86_64/repodata/ca38eb0f8ec9e2bd9401a853f021d0a10d110bbe72869ffbb8ae391881572ecb-primary.sqlite.bz2: [Errno 14] curl#52 - "Empty reply from server"
Trying other mirror.
(3/5): updates/7/x86_64/primary_db                         |  21 MB   00:02
(4/5): epel/x86_64/primary_db                              | 7.0 MB   00:02
epel/x86_64/updateinfo         FAILED
https://epel.excellmedia.net/7/x86_64/repodata/8b4087cf1ec2a440644c52e203dac340e00f77c29e2c7aafec13fc82a187b882-updateinfo.xml.bz2: [Errno 14] curl#60 - "Peer's Certificate has expired."
Trying other mirror.
It was impossible to connect to the CentOS servers.
This could mean a connectivity issue in your environment, such as the requirement to configure a proxy,
or a transparent proxy that tampers with TLS security, or an incorrect system clock.
You can try to solve this issue by using the instructions on https://wiki.centos.org/yum-errors
If above article doesn't help to resolve this issue please use https://bugs.centos.org/.

(5/5): epel/x86_64/updateinfo                              | 1.0 MB   00:00
Resolving Dependencies
--> Running transaction check
---> Package netdata.x86_64 0:1.39.1-1.el7 will be updated
---> Package netdata.x86_64 0:1.40.0.38.nightly-1.el7 will be obsoleting
--> Processing Dependency: netdata-plugin-apps for package: netdata-1.40.0.38.nightly-1.el7.x86_64
--> Processing Dependency: netdata-plugin-chartsd for package: netdata-1.40.0.38.nightly-1.el7.x86_64
--> Processing Dependency: netdata-plugin-debugfs for package: netdata-1.40.0.38.nightly-1.el7.x86_64
--> Processing Dependency: netdata-plugin-ebpf for package: netdata-1.40.0.38.nightly-1.el7.x86_64
--> Processing Dependency: netdata-plugin-go for package: netdata-1.40.0.38.nightly-1.el7.x86_64
--> Processing Dependency: netdata-plugin-perf for package: netdata-1.40.0.38.nightly-1.el7.x86_64
--> Processing Dependency: netdata-plugin-pythond for package: netdata-1.40.0.38.nightly-1.el7.x86_64
--> Processing Dependency: netdata-plugin-slabinfo for package: netdata-1.40.0.38.nightly-1.el7.x86_64
---> Package netdata-conf.noarch 0:1.39.1-1.el7 will be obsoleted
---> Package netdata-data.noarch 0:1.39.1-1.el7 will be obsoleted
--> Running transaction check
---> Package netdata-plugin-apps.x86_64 0:1.40.0.38.nightly-1.el7 will be installed
---> Package netdata-plugin-chartsd.x86_64 0:1.40.0.38.nightly-1.el7 will be installed
---> Package netdata-plugin-debugfs.x86_64 0:1.40.0.38.nightly-1.el7 will be installed
---> Package netdata-plugin-ebpf.x86_64 0:1.40.0.38.nightly-1.el7 will be installed
--> Processing Dependency: netdata-ebpf-legacy-code >= 1.40.0.38.nightly for package: netdata-plugin-ebpf-1.40.0.38.nightly-1.el7.x86_64
---> Package netdata-plugin-go.x86_64 0:1.40.0.38.nightly-1.el7 will be installed
---> Package netdata-plugin-perf.x86_64 0:1.40.0.38.nightly-1.el7 will be installed
---> Package netdata-plugin-pythond.x86_64 0:1.40.0.38.nightly-1.el7 will be installed
---> Package netdata-plugin-slabinfo.x86_64 0:1.40.0.38.nightly-1.el7 will be installed
--> Running transaction check
---> Package netdata-ebpf-legacy-code.x86_64 0:1.40.0.38.nightly-1.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package                   Arch    Version                  Repository     Size
================================================================================
Installing:
 netdata                   x86_64  1.40.0.38.nightly-1.el7  netdata-edge   25 M
     replacing  netdata-conf.noarch 1.39.1-1.el7
     replacing  netdata-data.noarch 1.39.1-1.el7
Installing for dependencies:
 netdata-ebpf-legacy-code  x86_64  1.40.0.38.nightly-1.el7  netdata-edge  3.5 M
 netdata-plugin-apps       x86_64  1.40.0.38.nightly-1.el7  netdata-edge  835 k
 netdata-plugin-chartsd    x86_64  1.40.0.38.nightly-1.el7  netdata-edge   26 k
 netdata-plugin-debugfs    x86_64  1.40.0.38.nightly-1.el7  netdata-edge  745 k
 netdata-plugin-ebpf       x86_64  1.40.0.38.nightly-1.el7  netdata-edge  1.0 M
 netdata-plugin-go         x86_64  1.40.0.38.nightly-1.el7  netdata-edge   13 M
 netdata-plugin-perf       x86_64  1.40.0.38.nightly-1.el7  netdata-edge  727 k
 netdata-plugin-pythond    x86_64  1.40.0.38.nightly-1.el7  netdata-edge  260 k
 netdata-plugin-slabinfo   x86_64  1.40.0.38.nightly-1.el7  netdata-edge  727 k

Transaction Summary
================================================================================
Install  1 Package (+9 Dependent packages)

Total download size: 46 M
Is this ok [y/d/N]: y
Downloading packages:
(1/10): netdata-ebpf-legacy-code-1.40.0.38.nightly-1.el7.x | 3.5 MB   00:03
(2/10): netdata-plugin-apps-1.40.0.38.nightly-1.el7.x86_64 | 835 kB   00:00
(3/10): netdata-plugin-chartsd-1.40.0.38.nightly-1.el7.x86 |  26 kB   00:00
(4/10): netdata-plugin-debugfs-1.40.0.38.nightly-1.el7.x86 | 745 kB   00:00
(5/10): netdata-plugin-ebpf-1.40.0.38.nightly-1.el7.x86_64 | 1.0 MB   00:00
(6/10): netdata-1.40.0.38.nightly-1.el7.x86_64.rpm         |  25 MB   00:07
(7/10): netdata-plugin-perf-1.40.0.38.nightly-1.el7.x86_64 | 727 kB   00:00
(8/10): netdata-plugin-pythond-1.40.0.38.nightly-1.el7.x86 | 260 kB   00:00
(9/10): netdata-plugin-slabinfo-1.40.0.38.nightly-1.el7.x8 | 727 kB   00:00
(10/10): netdata-plugin-go-1.40.0.38.nightly-1.el7.x86_64. |  13 MB   00:02
--------------------------------------------------------------------------------
Total                                              5.5 MB/s |  46 MB  00:08
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : netdata-plugin-go-1.40.0.38.nightly-1.el7.x86_64            1/13
  Installing : netdata-plugin-perf-1.40.0.38.nightly-1.el7.x86_64          2/13
  Installing : netdata-plugin-pythond-1.40.0.38.nightly-1.el7.x86_64       3/13
  Installing : netdata-plugin-debugfs-1.40.0.38.nightly-1.el7.x86_64       4/13
  Installing : netdata-plugin-chartsd-1.40.0.38.nightly-1.el7.x86_64       5/13
  Installing : netdata-plugin-slabinfo-1.40.0.38.nightly-1.el7.x86_64      6/13
  Installing : netdata-1.40.0.38.nightly-1.el7.x86_64                      7/13
  Installing : netdata-plugin-apps-1.40.0.38.nightly-1.el7.x86_64          8/13
  Installing : netdata-ebpf-legacy-code-1.40.0.38.nightly-1.el7.x86_64     9/13
  Installing : netdata-plugin-ebpf-1.40.0.38.nightly-1.el7.x86_64         10/13
  Cleanup    : netdata-1.39.1-1.el7.x86_64                                11/13
  Erasing    : netdata-conf-1.39.1-1.el7.noarch                           12/13
  Erasing    : netdata-data-1.39.1-1.el7.noarch                           13/13
  Verifying  : netdata-plugin-apps-1.40.0.38.nightly-1.el7.x86_64          1/13
  Verifying  : netdata-plugin-go-1.40.0.38.nightly-1.el7.x86_64            2/13
  Verifying  : netdata-plugin-perf-1.40.0.38.nightly-1.el7.x86_64          3/13
  Verifying  : netdata-1.40.0.38.nightly-1.el7.x86_64                      4/13
  Verifying  : netdata-plugin-pythond-1.40.0.38.nightly-1.el7.x86_64       5/13
  Verifying  : netdata-plugin-debugfs-1.40.0.38.nightly-1.el7.x86_64       6/13
  Verifying  : netdata-plugin-ebpf-1.40.0.38.nightly-1.el7.x86_64          7/13
  Verifying  : netdata-plugin-chartsd-1.40.0.38.nightly-1.el7.x86_64       8/13
  Verifying  : netdata-ebpf-legacy-code-1.40.0.38.nightly-1.el7.x86_64     9/13
  Verifying  : netdata-plugin-slabinfo-1.40.0.38.nightly-1.el7.x86_64     10/13
  Verifying  : netdata-1.39.1-1.el7.x86_64                                11/13
  Verifying  : netdata-data-1.39.1-1.el7.noarch                           12/13
  Verifying  : netdata-conf-1.39.1-1.el7.noarch                           13/13

Installed:
  netdata.x86_64 0:1.40.0.38.nightly-1.el7

Dependency Installed:
  netdata-ebpf-legacy-code.x86_64 0:1.40.0.38.nightly-1.el7
  netdata-plugin-apps.x86_64 0:1.40.0.38.nightly-1.el7
  netdata-plugin-chartsd.x86_64 0:1.40.0.38.nightly-1.el7
  netdata-plugin-debugfs.x86_64 0:1.40.0.38.nightly-1.el7
  netdata-plugin-ebpf.x86_64 0:1.40.0.38.nightly-1.el7
  netdata-plugin-go.x86_64 0:1.40.0.38.nightly-1.el7
  netdata-plugin-perf.x86_64 0:1.40.0.38.nightly-1.el7
  netdata-plugin-pythond.x86_64 0:1.40.0.38.nightly-1.el7
  netdata-plugin-slabinfo.x86_64 0:1.40.0.38.nightly-1.el7

Replaced:
  netdata-conf.noarch 0:1.39.1-1.el7     netdata-data.noarch 0:1.39.1-1.el7

Complete!
 OK

[/tmp/netdata-kickstart-jpMNGq7kbC]# test -x //usr/libexec/netdata/netdata-updater.sh
 OK

[/tmp/netdata-kickstart-jpMNGq7kbC]# grep -q \-\-enable-auto-updates //usr/libexec/netdata/netdata-updater.sh
 OK

[/tmp/netdata-kickstart-jpMNGq7kbC]# //usr/libexec/netdata/netdata-updater.sh --enable-auto-updates
Mon Jun 26 11:15:58 JST 2023 : INFO: netdata-updater.sh:  Auto-updating has been ENABLED through cron, updater script linked to /etc/cron.daily/netdata-updater\n
Mon Jun 26 11:15:58 JST 2023 : INFO: netdata-updater.sh:  If the update process fails and you have email notifications set up correctly for cron on this system, you should receive an email notification of the failure.
Mon Jun 26 11:15:58 JST 2023 : INFO: netdata-updater.sh:  Successful updates will not send an email.
 OK

Successfully installed the Netdata Agent.

Official documentation can be found online at https://learn.netdata.cloud/docs/.

Looking to monitor all of your infrastructure with Netdata? Check out Netdata Cloud at https://app.netdata.cloud.

Join our community and connect with us on:
  - GitHub: https://github.com/netdata/netdata/discussions
  - Discord: https://discord.gg/5ygS846fR6
  - Our community forums: https://community.netdata.cloud/
[/root]# rm -rf /tmp/netdata-kickstart-jpMNGq7kbC
 OK
#

インストール情報を確認すると、こちらはnetdataが用意したRPMレポジトリを利用するものとして設定されていた。

#  netdata -W buildinfo
Version: netdata v1.40.0-38-nightly
Configure options:  '--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu' '--program-prefix=' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--datadir=/usr/share' '--includedir=/usr/include' '--sharedstatedir=/var/lib' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--with-bundled-protobuf' '--prefix=/usr' '--sysconfdir=/etc' '--localstatedir=/var' '--libexecdir=/usr/libexec' '--libdir=/usr/lib' '--with-zlib' '--with-math' '--with-user=netdata' '--disable-dependency-tracking' 'build_alias=x86_64-redhat-linux-gnu' 'host_alias=x86_64-redhat-linux-gnu' 'CFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic' 'LDFLAGS=-Wl,-z,relro ' 'CXXFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic' 'PKG_CONFIG_PATH=:/usr/lib/pkgconfig:/usr/share/pkgconfig'
Install type: binpkg-rpm
    Binary architecture: x86_64
    Packaging distro:
Features:
    dbengine:                   YES
    Native HTTPS:               YES
    Netdata Cloud:              YES
    ACLK:                       YES
    TLS Host Verification:      YES
    Machine Learning:           YES
    Stream Compression:         NO
    HTTPD (h2o):                YES
Libraries:
    protobuf:                YES (bundled)
    jemalloc:                NO
    JSON-C:                  YES
    libcap:                  NO
    libcrypto:               YES
    libm:                    YES
    tcalloc:                 NO
    zlib:                    YES
Plugins:
    apps:                    YES
    cgroup Network Tracking: YES
    CUPS:                    NO
    debugfs:                 YES
    EBPF:                    YES
    IPMI:                    YES
    NFACCT:                  NO
    perf:                    YES
    slabinfo:                YES
    Xen:                     NO
    Xen VBD Error Tracking:  NO
Exporters:
    AWS Kinesis:             NO
    GCP PubSub:              NO
    MongoDB:                 NO
    Prometheus Remote Write: YES
Debug/Developer Features:
    Trace Allocations:       NO
# rpm -qa|grep netd
netdata-plugin-go-1.40.0.38.nightly-1.el7.x86_64
netdata-plugin-chartsd-1.40.0.38.nightly-1.el7.x86_64
netdata-ebpf-legacy-code-1.40.0.38.nightly-1.el7.x86_64
netdata-plugin-perf-1.40.0.38.nightly-1.el7.x86_64
netdata-plugin-debugfs-1.40.0.38.nightly-1.el7.x86_64
netdata-plugin-slabinfo-1.40.0.38.nightly-1.el7.x86_64
netdata-plugin-apps-1.40.0.38.nightly-1.el7.x86_64
netdata-plugin-ebpf-1.40.0.38.nightly-1.el7.x86_64
netdata-repo-edge-2-1.noarch
netdata-plugin-pythond-1.40.0.38.nightly-1.el7.x86_64
netdata-1.40.0.38.nightly-1.el7.x86_64
#

検証用にCentOS5を新規インストールしたら面倒だった 2024/01/09版

2024/01/09追記: 2024/01/09にCentOS 5.11のインストールを試み、この記事の内容が引き続き使えることを確認した。(記事自体への修正はない)


検証のため古いOSを2022年にインストールしてみるシリーズ、今回はCentOS5をインストールする必要がありインストールした。(これまで「Windows Server 2008R2編」「Windows 7編」)

久しぶりすぎて忘れていたこととか、2022年の現状だと発生することとか、いろいろあったのでメモ書きとして残す。

vSphere環境上にインストールしたのだが、まず設定でいくつか問題が・・・

NICが認識できない

vSphere仮想マシンを新規作成する際のゲストOSを「CentOS 4/5以降 (64ビット)」で作成すると

ネットワークアダプタが「VMXNET3」として作成される。

しかし、VMXNET3のドライバはCentOS5.11のインストールISOには含まれていないため、ネットワーク接続が行えない

インストール直後からネットワーク接続を行いたい場合はアダプタタイプを「E1000」あたりで設定して作成する。

VMware Toolsが用意されていない

最近のESXiに含まれているVMware Toolsのlinux.iso にはRHEL5/CentOS5で使えるVMware Toolsが入っていない。

RHEL5/CentOS5に対応するのはVMware Tools 10.3.22までで、10.3.23以降は対応していない。

以前と同じように https://packages.vmware.com/tools/releases/10.3.22/ にあるレポジトリRPM をインストールしてyumコマンドでvmware-toolsをインストールしようとしたのですが、packages.vmware.com がTLS1.2のみ許可するWebサーバ設定となっているため、CentOS5からではファイルがダウンロードできない状態となっています。

このため https://www.vmware.com/go/tools から VMware Tools 10.3.22のダウンロードリンク から VMware Tools packages for Linuxをダウンロードして使うこととなる。

CentOS5の更新がダウンロードできない

CentOS5.11をインストールした直後の状態で yum check-update を実行すると下記のエラーとなる。

# yum check-update
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
YumRepo Error: All mirror URLs are not using ftp, http[s] or file.
 Eg. Invalid release/repo/arch combination/
removing mirrorlist with no valid mirrors: /var/cache/yum/base/mirrorlist.txt
Error: Cannot find a valid baseurl for repo: base
#

これはmirrorlistでCentOS5用のファイルが提供されなくなったためのエラーとなる。

これに対してはmirrorlistではなくbaseurlに変更し、URLを「http://mirror.centos.org/centos/$releasever/~」から「http://vault.centos.org/centos/5.11/~」に書き換える、という手法が知られている。

しかし、2022年8月時点ではこの手法で書き換えた場合、「M2Crypto.SSL.SSLError: unknown protocol」というエラーで失敗する

# yum check-update
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
Traceback (most recent call last):
  File "/usr/bin/yum", line 29, in ?
    yummain.user_main(sys.argv[1:], exit_code=True)
  File "/usr/share/yum-cli/yummain.py", line 309, in user_main
    errcode = main(args)
  File "/usr/share/yum-cli/yummain.py", line 178, in main
    result, resultmsgs = base.doCommands()
  File "/usr/share/yum-cli/cli.py", line 345, in doCommands
    self._getTs(needTsRemove)
  File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 101, in _getTs
    self._getTsInfo(remove_only)
  File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 112, in _getTsInfo
    pkgSack = self.pkgSack
  File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 662, in <lambda>
    pkgSack = property(fget=lambda self: self._getSacks(),
  File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 502, in _getSacks
    self.repos.populateSack(which=repos)
  File "/usr/lib/python2.4/site-packages/yum/repos.py", line 260, in populateSack
    sack.populate(repo, mdtype, callback, cacheonly)
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 168, in populate
    if self._check_db_version(repo, mydbtype):
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 226, in _check_db_version
    return repo._check_db_version(mdtype)
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 1226, in _check_db_version
    repoXML = self.repoXML
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 1399, in <lambda>
    repoXML = property(fget=lambda self: self._getRepoXML(),
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 1391, in _getRepoXML
    self._loadRepoXML(text=self)
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 1381, in _loadRepoXML
    return self._groupLoadRepoXML(text, ["primary"])
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 1365, in _groupLoadRepoXML
    if self._commonLoadRepoXML(text):
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 1201, in _commonLoadRepoXML
    result = self._getFileRepoXML(local, text)
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 974, in _getFileRepoXML
    cache=self.http_caching == 'all')
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 811, in _getFile
    http_headers=headers,
  File "/usr/lib/python2.4/site-packages/urlgrabber/mirror.py", line 412, in urlgrab
    return self._mirror_try(func, url, kw)
  File "/usr/lib/python2.4/site-packages/urlgrabber/mirror.py", line 398, in _mirror_try
    return func_ref( *(fullurl,), **kwargs )
  File "/usr/lib/python2.4/site-packages/urlgrabber/grabber.py", line 936, in urlgrab
    return self._retry(opts, retryfunc, url, filename)
  File "/usr/lib/python2.4/site-packages/urlgrabber/grabber.py", line 854, in _retry
    r = apply(func, (opts,) + args, {})
  File "/usr/lib/python2.4/site-packages/urlgrabber/grabber.py", line 922, in retryfunc
    fo = URLGrabberFileObject(url, filename, opts)
  File "/usr/lib/python2.4/site-packages/urlgrabber/grabber.py", line 1010, in __init__
    self._do_open()
  File "/usr/lib/python2.4/site-packages/urlgrabber/grabber.py", line 1093, in _do_open
    fo, hdr = self._make_request(req, opener)
  File "/usr/lib/python2.4/site-packages/urlgrabber/grabber.py", line 1202, in _make_request
    fo = opener.open(req)
  File "/usr/lib64/python2.4/urllib2.py", line 364, in open
    response = meth(req, response)
  File "/usr/lib64/python2.4/urllib2.py", line 471, in http_response
    response = self.parent.error(
  File "/usr/lib64/python2.4/urllib2.py", line 396, in error
    result = self._call_chain(*args)
  File "/usr/lib64/python2.4/urllib2.py", line 337, in _call_chain
    result = func(*args)
  File "/usr/lib64/python2.4/urllib2.py", line 565, in http_error_302
    return self.parent.open(new)
  File "/usr/lib64/python2.4/urllib2.py", line 358, in open
    response = self._open(req, data)
  File "/usr/lib64/python2.4/urllib2.py", line 376, in _open
    '_open', req)
  File "/usr/lib64/python2.4/urllib2.py", line 337, in _call_chain
    result = func(*args)
  File "/usr/lib64/python2.4/site-packages/M2Crypto/m2urllib2.py", line 82, in https_open
    h.request(req.get_method(), req.get_selector(), req.data, headers)
  File "/usr/lib64/python2.4/httplib.py", line 810, in request
    self._send_request(method, url, body, headers)
  File "/usr/lib64/python2.4/httplib.py", line 833, in _send_request
    self.endheaders()
  File "/usr/lib64/python2.4/httplib.py", line 804, in endheaders
    self._send_output()
  File "/usr/lib64/python2.4/httplib.py", line 685, in _send_output
    self.send(msg)
  File "/usr/lib64/python2.4/httplib.py", line 652, in send
    self.connect()
  File "/usr/lib64/python2.4/site-packages/M2Crypto/httpslib.py", line 55, in connect
    sock.connect((self.host, self.port))
  File "/usr/lib64/python2.4/site-packages/M2Crypto/SSL/Connection.py", line 174, in connect
    ret = self.connect_ssl()
  File "/usr/lib64/python2.4/site-packages/M2Crypto/SSL/Connection.py", line 167, in connect_ssl
    return m2.ssl_connect(self.ssl, self._timeout)
M2Crypto.SSL.SSLError: unknown protocol
#

これは、 vault.centos.org が TLS 1.2を使用したhttpsアクセスしか受け付けなくなったが、CentOS5側ではTLS 1.2に非対応であるため、TLS 1.2が理解できず「unknown protocol」となっている、という状態である。

2022年8月時点では archive.kernel.org は http アクセスを許可してくれているため、URLを「http://archive.kernel.org/centos-vault/5.11/」に書き換えることで、CentOS5のアップデートが行えるようになる。

# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client.  You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#

[base]
name=CentOS-$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://vault.centos.org/centos/$releasever/os/$basearch/
baseurl=http://archive.kernel.org/centos-vault/5.11/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#released updates
[updates]
name=CentOS-$releasever - Updates
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://vault.centos.org/centos/$releasever/updates/$basearch/
baseurl=http://archive.kernel.org/centos-vault/5.11/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
#baseurl=http://vault.centos.org/centos/$releasever/extras/$basearch/
baseurl=http://archive.kernel.org/centos-vault/5.11/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
#baseurl=http://vault.centos.org/centos/$releasever/centosplus/$basearch/
baseurl=http://archive.kernel.org/centos-vault/5.11/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
#baseurl=http://vault.centos.org/centos/$releasever/contrib/$basearch/
baseurl=http://archive.kernel.org/centos-vault/5.11/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

Arcserve UDPで出来ないことのメモ 2024/04/23版

Arcserve UDPが使いたい、と言われて確認したけど、それはできないことだったんだけど、どこにもサポートしてない、という明示的な記述はなかったことをメモする。

「AWS EC2上のインスタンスをバックアップして、OSまるごとリストアする」ことはできない(エージェントなしでの話)

「Amazon S3などのブロックストレージに直接バックアップ保存はできない」

まず、公式資料について

ARCSERVE UNIFIED DATA PROTECTION 8.x ナレッジ センター
 ドキュメントについて調べる時の起点

UDP のクラウド機能の理解
 Arcserve UDPで使えるクラウド関連機能についての説明

2023/06/19追記:UDP 9.0が出ていたので「新機能および機能拡張」を確認したがこのページにかいてある項目に関連する変更は見当たらなかった

2024/04/23追記:UDP 9.2が出ていたので確認。
ARCSERVE UNIFIED DATA PROTECTION 9.x ナレッジ センター
UDP のクラウド機能の理解
Arcserve Unified Data Protection 9.x 動作要件
確認する限りでは、これまでと状況は変わっていない模様。

変更履歴

2022/07/27 初版作成
2023/06/19 UDP 9.0について追記
2024/04/23 UDP 9.2について追記

AWS EC2上のインスタンスに対してできること

・EC2上のインスタンスにUDP Agentをインストールしてバックアップすること

arcserve Unified Data Protection Support with Amazon EC2 VMs」に「arcserve UDP agent for Windows and Linux supports working on Amazon EC2 VMs」とある

ただ、「Agent for Windows ユーザ ガイド」と「Agent for Linux ユーザ ガイド」を比較すると、Linux側は明示的に書かれているが、WindowsについてはAWS EC2対応について記載されていないためサポートしているのかが不明瞭である。

・EC2上のインスタンスをバックアップして、オンプレ側にある仮想環境にリストアする

Arcserve UDP8.xのマニュアル「Arcserve UDP エージェント(Linux) の使用」に「Amazon EC2 からローカルの Linux マシンに対してマイグレーション BMR を実行する方法」というサポートしている記述がある。

AWS EC2インスタンスでは実践していないがAzureのWindows/LinuxインスタンスでUDP agent経由でバックアップしたものをオンプレHyper-V上で起動させるという検証はしたことがあるので、おそらくEC2上のWindowsインスタンスも同様にいけると思われる。

・EC2上のLinuxインスタンスをBMRを使ってリストアすること

Arcserve UDP8.xのマニュアル「Arcserve UDP エージェント(Linux) の使用」に「AWS クラウドへの Arcserve UDP エージェント(Linux)のインストール」というサポートしている記述がある。

・バックアップしたデータからファイル/ディレクトリを抜き出してリストアすること

これは、UDP Agentとしてバックアップしているので、普通にファイルリストアができる、という話である。

・EC2上にEC2 APIを使って仮想スタンバイもしくはインスタント仮想マシンのインスタンスを作成する

Arcserve UDPでは災害発生時に即座に別の場所でサーバが復帰できるように「仮想スタンバイ(Windows用)」と「インスタント仮想マシン(Linux用)」という機能がある

これを使って、AWS EC2上に別のインスタンスを作成し、そこに対してデータをリストアし続ける、ということを行える。

Amazon EC2 のクラウド アカウントの追加」にあるようにEC2アカウントを登録することで、インスタンス作成を含めて勝手にやってくれる。

・EC2上に作成されたLinuxのインスタント仮想マシンを通常のインスタンスにする

マニュアルに「Linux インスタント仮想マシンを独立した仮想マシンに変換する」という項目があるのでできるのでしょう・・・

AWS EC2上のインスタンスに対して出来ないこと

・EC2のAPIを使って、インスタンスまるごとバックアップすること

EC2上のインスタンスを、EC2 API側からバックアップするような機能は搭載されていない。

・EC2のAPIを使って、インスタンスをまるごとリストアすること

仮想スタンバイもしくはインスタント仮想マシンのインスタンスを作成する機能があるくせに、連動しないで単独でインスタンスを作成しリストアする機能は搭載されていない。

・EC2上のWindowsインスタンスをBMRを使ってリストアすること

Arcserve UDP8.xのマニュアル側には「Arcserve UDP エージェント(Linux) の使用」側には「AWS クラウドへの Arcserve UDP エージェント(Linux)のインストール」というサポートしている記述がある。

しかし「Arcserve UDP エージェント(Windows)の使用」にはクラウド上にBMRでリストアできるような記述がない。

・Amazon S3などのブロックストレージに直接バックアップできない

マニュアルに「復旧ポイントのコピー、ファイル コピー、またはファイル アーカイブのタスクを作成するときに、このアカウントを使用できます。」と書いてある。

つまり、復旧ポイントを最初に作成するときのストレージとしては利用できない、ということになり、ローカルなどで作成した復旧ポイントのコピーをクラウド上に作成する、というイメージとなる。

Azure上のインスタンスに対して出来ること

基本的にはAmazon EC2インスタンスと同様。

・仮想スタンバイの注意点

Azure blobストレージを作成して、そこにディスクイメージをまるごと保管するので料金が掛かる。

仮想スタンバイを起動する場合、Azure blobストレージ上のデータを使って、新規のインスタンスを作成する。つまり、新規インスタンス+そのストレージ料金が新しく料金が掛かる。(Azure blobストレージは残り続ける)

・インスタント仮想マシンの注意点

インスタント仮想マシンを起動する場合、新規インスタンスを作成し、そのインスタンスに対して 同じネットワーク内にあるUDP Linuxサーバを経由してデータを送り込みリストアする。

仮想スタンバイと違ってAzure blobストレージは使わないが、起動時に全リストアをかけるので時間がかかる。

テープ装置連動の注意点

・Arcserve UDPサーバとArcserve Backupサーバの2種類が必要

UDPにはテープにアクセスする機能がなく、Arcseve Backupを利用するため2種類のバックアップソフトをインストールする必要がある。

それぞれ別のMicrosoft SQLインスタンスが稼働することになる。

Arcserve UDP側が ARCSERVE_APP で、Arcserve Backup側がARCSERVE_DB

・テープには毎回フルバックアップされる

Arcserve UDPから直接テープに対してバックアップすることはできない。

Arcserve Backupを別途インストールして、そこと連動してテープに保存する仕組みとなっている。

テープに保存できるのは「復旧ポイント」という塊でのもの

Arcserve UDP側は増分でバックアップしているのだが、Arcserve Backup側でテープにバックアップする際は、全22GBが毎回バックアップされている。

UDPで毎日バックアップしているけど、テープに落とすのは週1回でいい、という場合は、まず最初のUDPバックアップのスケジュールで毎日ではなく「毎週」でスケジュールを1つつくって、それをテープに落とす、という形になる

・ファイルシステムカタログを作成するとArcserve Backup側でファイルリストア可能

Arcserve UDPのプラン設定で、ファイル システム カタログ 生成すると、Arcserve Backup側のGUIでファイルリストアができる

Arcserve BackupのリストアUIを見るとファイルツリーが確認出来る

使用するバックアップ世代も選択できる

・vSphere仮想マシンのファイルリストア取り扱いの違い

Arcserve UDPでvSphere仮想マシンをバックアップした場合、Windows仮想マシンであればArcserve UDP側でファイルシステムカタログを作成しておけば、Arcserve Backup側でファイル単位のリストアが可能。

Linux仮想マシンの場合は、Arcserve UDP側でファイルシステムカタログを作成する、と設定してもファイルシステムカタログは作成されない。Arcserve Backup側でバックアップは取られるもののリストアツリーではWindowsに分類されており、ファイルツリーは見えない

これは、おそらくArcserve Backup側でLinux仮想マシンについてのファイル単位のリストアがサポートされていないためではないかと考えられる。

Oracle Cloud上のLinuxサーバからOracle Cloudのオブジェクトストレージをs3fsを使ってファイルシステムとして使う

Oracle Cloud上で運用しているファイルサーバのディスク使用率がいつのまにか96%を超えていた。

え?と思って調べてみたら、外部コンテンツを取り込む際に、コンテンツのバージョンも残しておこうと軽い気持ちで設定したgitが容量を使っていた。

遅くてもいいや、ということで、使っていない50GBのオブジェクトストレージ領域をs3fsでファイルシステムとして使うこととした。

参考文献
s3fs配布元
・Oracle Cloud Infrastructure Blog「Mounting an Object Storage Bucket as File System on Oracle Linux
・Oracle Cloud Infrastructureドキュメント「Amazon S3互換API
・Cloudii「Oracle Cloud オブジェクトストレージをOracle Linuxのファイルシステムとして直接マウントする方法。

基本的には、Oracle Cloud Infrastructure Blogの記述通りにやるだけなのだが、いろいろ勘違いしていて上手くいかなかった。

手順0: Oracle Cloud上でバケット作成

Oracle blog上では手順に書かれていないので手順0として書きます。

オブジェクトストレージにてバケットの作成を行います。

バケット作成後にバケットの詳細を確認し、一般のところにある「ネームスペース」もあとで使用します。

手順1: s3fs-fuseをインストール

epelを有効にしている状態であれば、「yum install s3fs-fuse」を実行するだけでインストール完了。

# yum install s3fs-fuse
読み込んだプラグイン:langpacks, ulninfo
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ s3fs-fuse.x86_64 0:1.91-1.el7 を インストール
--> 依存性の処理をしています: fuse >= 2.8.4 のパッケージ: s3fs-fuse-1.91-1.el7.x86_64
--> 依存性の処理をしています: fuse-libs >= 2.8.4 のパッケージ: s3fs-fuse-1.91-1.el7.x86_64
--> 依存性の処理をしています: libfuse.so.2(FUSE_2.2)(64bit) のパッケージ: s3fs-fuse-1.91-1.el7.x86_64
--> 依存性の処理をしています: libfuse.so.2(FUSE_2.5)(64bit) のパッケージ: s3fs-fuse-1.91-1.el7.x86_64
--> 依存性の処理をしています: libfuse.so.2(FUSE_2.6)(64bit) のパッケージ: s3fs-fuse-1.91-1.el7.x86_64
--> 依存性の処理をしています: libfuse.so.2(FUSE_2.8)(64bit) のパッケージ: s3fs-fuse-1.91-1.el7.x86_64
--> 依存性の処理をしています: libfuse.so.2()(64bit) のパッケージ: s3fs-fuse-1.91-1.el7.x86_64
--> トランザクションの確認を実行しています。
---> パッケージ fuse.x86_64 0:2.9.4-1.0.9.el7 を インストール
---> パッケージ fuse-libs.x86_64 0:2.9.4-1.0.9.el7 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

===================================================================================================================================
 Package                     アーキテクチャー         バージョン                        リポジトリー                          容量
===================================================================================================================================
インストール中:
 s3fs-fuse                   x86_64                   1.91-1.el7                        ol7_developer_EPEL                   257 k
依存性関連でのインストールをします:
 fuse                        x86_64                   2.9.4-1.0.9.el7                   ol7_latest                            88 k
 fuse-libs                   x86_64                   2.9.4-1.0.9.el7                   ol7_latest                            97 k

トランザクションの要約
===================================================================================================================================
インストール  1 パッケージ (+2 個の依存関係のパッケージ)

総ダウンロード容量: 442 k
インストール容量: 1.1 M
Is this ok [y/d/N]: y
Downloading packages:
<略>
インストール:
  s3fs-fuse.x86_64 0:1.91-1.el7

依存性関連をインストールしました:
  fuse.x86_64 0:2.9.4-1.0.9.el7                                 fuse-libs.x86_64 0:2.9.4-1.0.9.el7

完了しました!
#

手順2: 認証情報の設定

Oracle Cloudにログインした状態で右上のユーザアイコンから[プロファイル]-[ユーザー設定]を選択します。

画面が変わって、下の方にある[リソース]-[顧客秘密キー]を選択します。

この「顧客秘密キー」がS3 compatibleとして使う場合の認証情報となります。

「秘密キーの生成」をクリックして、何か名前を決めて作成します。

次の画面で表示される「生成されたキー」は「SECRET_ACCESS_KEY」として使いますので、かならず「コピー」してください。

これを忘れた場合は再作成する必要があります。

なお、キーはこんな感じですね。

で・・・Oracle blogだとACCESS_KEY_IDは何を使えばいいのかハッキリ書いていないので、しばらく名前として設定したs3-accessを使ってアクセスを試みていました。

正しくは上記の「アクセスキー」のところの文字列を使います。

Oracle blogでは下記の様に個人ユーザのディレクトリに認証情報を配置しています。

$ echo ACCESS_KEY_ID:SECRET_ACCESS_KEY > ${HOME}/.passwd-s3fs
$ chmod 600 ${HOME}/.passwd-s3fs

今回は個人用ではなく起動時から使えるような形にしたいので /etc/passwd-s3fs として設定しました。

# echo ~b66e06:KZyW~~~BDho= >  /etc/passwd-s3fs 
# chmod 600  /etc/passwd-s3fs 
#

手順3: マウントする

Oracle blogでは個人権限でマウントするための下記が書かれています。

$ s3fs [bucket] [destination directory] -o endpoint=[region] -o passwd_file=${HOME}/.passwd-s3fs -o url=https://[namespace].compat.objectstorage.[region].oraclecloud.com/ -onomultipart -o use_path_request_style

最初はアクセスできることを検証するため、このコマンドで実行します。

各要素は以下のようになっています。

[bucket]=手順0で作成したバケット名
[destination directory]=ローカルLinuxのマウントポイント
[namespace]=手順0で作成したバケットの詳細で確認できるネームスペース

テストとしてホームディレクトリ内にあるs3fsというディレクトリにマウントするべく実行

$ s3fs tw~t ./s3fs -o endpoint=us-phoenix-1 -o passwd_file=/etc/passwd-s3fs -o url=https://ax~b7.compat.objectstorage.us-phoenix-1.oraclecloud.com -onomultipart -o use_path_request_style
fuse: failed to exec fusermount: Permission denied
$

これはfusermountに権限がないためマウントできないというもので、下記で対処します。

$ sudo chmod a+x /usr/bin/fusermount
$ 

再実行

$ s3fs tw~t ./s3fs -o endpoint=us-phoenix-1 -o passwd_file=/etc/passwd-s3fs -o url=https://ax~b7.compat.objectstorage.us-phoenix-1.oraclecloud.com -onomultipart -o use_path_request_style
$ df -h
ファイルシス   サイズ  使用  残り 使用% マウント位置
devtmpfs         460M     0  460M    0% /dev
tmpfs            486M  380K  486M    1% /dev/shm
tmpfs            486M   19M  467M    4% /run
tmpfs            486M     0  486M    0% /sys/fs/cgroup
/dev/sda3         39G   37G  2.0G   95% /
/dev/sda1        200M  7.4M  193M    4% /boot/efi
tmpfs             98M     0   98M    0% /run/user/0
tmpfs             98M     0   98M    0% /run/user/993
tmpfs             98M     0   98M    0% /run/user/1001
$

マウントされていない??/var/log/messages を確認すると認証情報の関連でマウントに失敗していました。

Jul  9 23:07:06 oralinux s3fs[22545]: s3fs version 1.91(unknown) : s3fs -o endpoint=us-phoenix-1 -o passwd_file=/etc/passwd-s3fs -o url=https://ax~fb7.compat.objectstorage.us-phoenix-1.oraclecloud.com -onomultipart -o use_path_request_style twsearch-git ./s3fs
Jul  9 23:07:06 oralinux  s3fs[22545]: Loaded mime information from /etc/mime.types
Jul  9 23:07:06 oralinux  s3fs[22546]: init v1.91(commit:unknown) with OpenSSL
Jul  9 23:07:06 oralinux  s3fs[22546]: s3fs.cpp:s3fs_check_service(3572): Failed to connect by sigv4, so retry to connect by signature version 2.
Jul  9 23:07:06 oralinux  s3fs[22546]: s3fs.cpp:s3fs_check_service(3584): Bad Request(host=https://ax~fb7.compat.objectstorage.us-phoenix-1.oraclecloud.com) - result of checking service.

これは /etc/passwd-s3fsに書いた access-key定義が誤っていた場合のログです。

修正して再実行すると今度はマウントできました。

$ s3fs tw~t ./s3fs -o endpoint=us-phoenix-1 -o passwd_file=/etc/passwd-s3fs -o url=https://ax~b7.compat.objectstorage.us-phoenix-1.oraclecloud.com -onomultipart -o use_path_request_style
$ df -h
ファイルシス   サイズ  使用  残り 使用% マウント位置
devtmpfs         460M     0  460M    0% /dev
tmpfs            486M  400K  486M    1% /dev/shm
tmpfs            486M   19M  467M    4% /run
tmpfs            486M     0  486M    0% /sys/fs/cgroup
/dev/sda3         39G   37G  1.9G   96% /
/dev/sda1        200M  7.4M  193M    4% /boot/efi
tmpfs             98M     0   98M    0% /run/user/0
tmpfs             98M     0   98M    0% /run/user/993
tmpfs             98M     0   98M    0% /run/user/1001
s3fs              16E     0   16E    0% /home/users/s3fs
$

成功した場合は /var/log/messagesは下記の様な感じでした

Jul  9 23:30:18 oralinux s3fs[23933]: s3fs version 1.91(unknown) : s3fs -o endpoint=us-phoenix-1 -o passwd_file=/etc/passwd-s3fs -o url=https://ax~fb7.compat.objectstorage.us-phoenix-1.oraclecloud.com -onomultipart -o use_path_request_style twsearch-git ./s3fs
Jul  9 23:30:18 oralinux s3fs[23933]: Loaded mime information from /etc/mime.types
Jul  9 23:30:18 oralinux s3fs[23936]: init v1.91(commit:unknown) with OpenSSL
Jul  9 23:30:26 oralinux systemd: Configuration file /etc/systemd/system/oracle-cloud-agent.service is marked executable. Please remove executable permission bits. Proceeding anyway.

ただ、この設定だとs3fsを実行したユーザだけがアクセスでき、他のユーザではアクセスできません。

これは「allow_other」というオプションをつけることでアクセスできるようになります。

手順4: /etc/fstab に書く

再起動してもマウントされるようにするには /etc/fstab に書きます。 (/etc/rc.local とかに書く、という手順は不適切です)

上記で使った例であれば /etc/fstab に下記の様に書きます。

tw~it /home/users/s3fs fuse.s3fs use_path_request_style,url=https://axd~fb7.compat.objectstorage.us-phoenix-1.oraclecloud.com,use_path_request_style,_netdev,allow_other

これで、再起動してもマウントされるようになりました。

コピーしてきた仮想マシンがThe specified feature is not supported by this versionで起動できない

なんか生き残っていたvSphere 5.5上で動いていたvSphere仮想マシンを新vSphere環境に移行したいけど、費用かけないいい方法は無い?という相談があった。

ある程度作業ができる人なので「仮想マシン止めてからsshでESXiにログインして、仮想マシンが入ったディレクトリをまるごとscpでコピーすればいいんじゃないですか?」と提案した。

で・・・やってみたけど、仮想マシンのパワーオンに失敗したけど、なんだろ?という質問が・・・

すべてのディスクを列挙できません。指定された機能はこのバージョンではサポートされていません

というエラーとのこと。

こういうのは英語で探さないと情報がでてこないけど、正しいのがわからないので、とりあえず「not support this version」あたりの単語から https://kb.vmware.com/ で検索して情報捜索。

Failed to power on virtual machine (82542)
 仮想マシンのパワーオンに失敗する場合のまとめ

“The specified feature is not supported by this version” error creating a snapshot in a vSAN environment (83381)
 vSANとVMFS6とでサポートしている機能に差があることで、特定のデータストアで起動できない、という事例

Migrating a VM to a VSAN datastore fails (82801)
 VSANに移行しようとして失敗する際にvmfssparseのエラーなどがでている

どうやらデータストアのファイルシステムと、仮想マシンのスナップショット周りでなにかがある、というのが見えてきた。

その観点で調査継続

VMFS でのスナップショットのフォーマット

VMFS5で2TB未満の仮想ディスクのスナップショットはVMFSsparseフォーマット
VMFS5で2TB以上の仮想ディスクのスナップショットは SEsparseフォーマット
VMFS6の仮想ディスクスナップショットは全てSEsparseフォーマット

Virtual Machines running on an SEsparse snapshot may report guest data inconsistencies (59216)

VMFS5データストアとNFSデータストアでは、2TB以上の仮想ディスクはSEsparse形式

ということが判明した。

このことから、起動しなかった仮想マシンではスナップショットが使われいたのではないか?という仮説となった。

確認してもらうと確かにスナップショットが使われていたとのこと。

対処方法としては、「新環境にNFSデータストアがあるのであればそこに移動させた後であれば起動できる」一度起動したあとであればstorage vmotionを使ってVMFS6データストアに移動できる。

もしくは、スナップショットを消してから移行を行う、ということとなった。