質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.02%
IPv6

IPv6は、インターネットプロトコルの一つ。主流となっているIPv4に変わるものとして設計されました。IPアドレスの需要の増大を予見して開発されたもので、従来よりも多くのIPアドレスの作成が可能です。

Redis

Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

Q&A

解決済

OS起動直後のREDIS自動起動エラー (bind設定)

iBETA
iBETA

総合スコア43

IPv6

IPv6は、インターネットプロトコルの一つ。主流となっているIPv4に変わるものとして設計されました。IPアドレスの需要の増大を予見して開発されたもので、従来よりも多くのIPアドレスの作成が可能です。

Redis

Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

1回答

0グッド

0クリップ

1353閲覧

投稿2020/11/17 05:33

編集2020/11/19 16:27

正直、困っています。REDISに関しては、昨日始めたばかりの超初心者でして、
サービスへの通信は、全てIPv6で通信しなければならず、てこずっています。
色々試したつもりなのですが、正直お手上げ状態です。
どなた様か、ご教授いただければ幸いです。どうぞよろしくお願いいたします。
(追記、11月20日01時24分現在もまだだめです。)

前提・実現したいこと

redis を、IPv6(Link Local)で起動して動作させたい。
OS起動後に、systemctl start redis だと問題なく起動される。
しかしながら、OSを再起動すると自動起動に失敗。
IPv4 だと問題なく自動起動されるが、IPv6で設定した場合は自動起動せず。
firewalld, SELINUXは、共にdisabled。
念のため、wait-for-ips.conf は作成してあります。

OSの再起動後の状態 /etc/redis.conf
active bind 127.0.0.1
active bind 0.0.0.0
active bind ::1
active bind ::
failed bind 2405:xxxx:2ec0:xxxx:9c11:c99e:5ab3:f787
failed bind fe80::c42:3967:3154:694b%enp0s3

/etc/redis.conf (bind以外の変更箇所)

requirepass xu56TR32 protected-mode no daemonize yes supervised systemd

systemctl status redis (OS起動直後)

● redis.service - Redis persistent key-value database Loaded: loaded (/usr/lib/systemd/system/redis.service; enabled; vendor preset: disabled) Drop-In: /etc/systemd/system/redis.service.d └─limit.conf, wait-for-ips.conf Active: failed (Result: exit-code) since Tue 2020-11-17 13:44:20 JST; 4min 36s ago Process: 822 ExecStart=/usr/bin/redis-server /etc/redis.conf --supervised systemd (code=exited, status=1/FAILURE) Main PID: 822 (code=exited, status=1/FAILURE) Nov 17 13:44:20 localhost.localdomain systemd[1]: Starting Redis persistent key-value database... Nov 17 13:44:20 localhost.localdomain systemd[1]: Started Redis persistent key-value database. Nov 17 13:44:20 localhost.localdomain systemd[1]: redis.service: Main process exited, code=exited, status=1/FAILURE Nov 17 13:44:20 localhost.localdomain systemd[1]: redis.service: Failed with result 'exit-code'.

/var/log/redis/redis.log (OS起動直後)

822:C 17 Nov 2020 13:44:20.295 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo 822:C 17 Nov 2020 13:44:20.295 # Redis version=5.0.3, bits=64, commit=00000000, modified=0, pid=822, just started 822:C 17 Nov 2020 13:44:20.295 # Configuration loaded 822:C 17 Nov 2020 13:44:20.295 * supervised by systemd, will signal readiness 822:M 17 Nov 2020 13:44:20.340 # Could not create server TCP listening socket fe80::c42:3967:3154:694b%enp0s3:6379: bind: Cannot assign requested address 822:M 17 Nov 2020 13:44:20.340 # Configured to not listen anywhere, exiting.

systemctl status redis (systemctl start redis)

● redis.service - Redis persistent key-value database Loaded: loaded (/usr/lib/systemd/system/redis.service; enabled; vendor preset: disabled) Drop-In: /etc/systemd/system/redis.service.d └─limit.conf, wait-for-ips.conf Active: active (running) since Tue 2020-11-17 14:14:45 JST; 4s ago Process: 1422 ExecStop=/usr/libexec/redis-shutdown (code=exited, status=0/SUCCESS) Main PID: 1440 (redis-server) Tasks: 4 (limit: 11262) Memory: 1.4M CGroup: /system.slice/redis.service └─1440 /usr/bin/redis-server fe80::c42:3967:3154:694b%enp0s3:6379 Nov 17 14:14:44 localhost.localdomain systemd[1]: Starting Redis persistent key-value database... Nov 17 14:14:45 localhost.localdomain systemd[1]: Started Redis persistent key-value database.

/var/log/redis/redis.log (systemctl start redis)

1440:M 17 Nov 2020 14:14:45.012 # Server initialized 1440:M 17 Nov 2020 14:14:45.013 * DB loaded from disk: 0.000 seconds 1440:M 17 Nov 2020 14:14:45.013 * Ready to accept connections

/etc/systemd/system/redis.service.d/wait-for-ips.conf

[Unit] After=network-online.target

試していないこと

redisのバージョンアップ
redisは6が出ているが、できることならそのまま5を使用したい。

補足情報

CentOS 8.2,
Redis: 5.0.3 (dnf install redis)

以下のような質問にはグッドを送りましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

グッドが多くついた質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

回答1

0

自己解決

protected-mode no、requirepass xxxxxxxxxx、
更には、IPv4でプライベートアドレスを設定してみたりしたのですが、
IPv6に限らずなぜか自動起動出来ませんでした。
結局、自動起動できたのは、127.0.0.1, 0.0.0.0, ::1, :: の4つ。。。
残念ですが、bind :: で設定することにしました。解決には至りませんでしたが、
まあこれでよしとします。ではでは。。。

投稿2020/11/19 16:17

iBETA

総合スコア43

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.02%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

IPv6

IPv6は、インターネットプロトコルの一つ。主流となっているIPv4に変わるものとして設計されました。IPアドレスの需要の増大を予見して開発されたもので、従来よりも多くのIPアドレスの作成が可能です。

Redis

Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。