低レベルインフラエンジニアの忘備録

Linux系の各種作業を自分用の忘備録として残しています

ansibleでmysqlのserver-idを生成

忘れてしまいそうなのでメモ

  • 生成ルール
  • IPアドレスの第2オクテット〜第4オクテットを取り出して連結
  • 桁数は3桁で0パディング →同一セグメント内で一意になる

こんな感じでvarsを設定して、

mysql_server_id: "{{ ansible_default_ipv4.address.split('.')[1].zfill(3)}}{{ ansible_default_ipv4.address.split('.')[2].zfill(3)}}{{ ansible_default_ipv4.address.split('.')[3].zfill(3)}}"

templateで呼び出し。

server-id = {{ mysql_server_id }}

IPアドレスが192.168.0.1の場合だと、server_idは「168000001」となる