とりあえずのメモの cloudpack の かっぱ (@inokara) です。
目的
- こちらの記事の続編
- hosts に登録された HAProxy ノードにラウンドロビンでアクセスさせる
- dnsmasq にアクセスさせることで Consul や Amazon Route53 への負荷の軽減とレスポンスの向上を図る
メモ
dnsmasq のインストール
yum -y install dnsmasq chkconfig --level 3 dnsmasq on
dnsmasq のセットアップ
cat << EOT > /etc/dnsmasq.conf strict-order addn-hosts=/etc/add_hosts expand-hosts domain=your_domain.internal EOT
/etc/resolv.conf の修正
; generated by /sbin/dhclient-script search your_domain.internal nameserver 127.0.0.1 nameserver xxx.xxx.xxx.2
上記を既存の nameserver
行の上に設置。
resolv.conf を上書きされないようにする
/etc/sysconfig/network-scripts/ifcfg-eth0
に以下を追記。
PEERDNS=no
network を再起動。
service network restart
テンプレートファイルの修正
/etc/add_hosts.ctmpl
を以下のように作成。
{{range service "service_name"}} {{.Address}} service_name {{.Node}}{{end}}
consul-template の再起動
consul-template -consul 127.0.0.1:8500 -template "/etc/add_hosts.ctmpl:/etc/add_hosts:service dnsmasq restart" &
確認
cat /etc/add_hosts ping -c 1 service_name dig service_name
とりあえず…
メモでした。
元記事はこちらです。
「consul-template と dnsmasq でラウンドロビン」