环境:
master 172.25.207.146 Ubuntu 14.04.6 LTS
slave 172.25.207.156 Ubuntu 14.04.6 LTS
|
master、slave) /etc/hosts
172.25.207.146 ns1.beta.uledns.com
172.25.207.156 ns2.beta.uledns.com
|
master,slave)
apt-get update
apt-get
install
bind9 bind9utils bind9-doc
mkdir
-p
/etc/bind/zones
cat
/etc/bind/named
.conf
include
"/etc/bind/named.conf.options"
;
include
"/etc/bind/named.conf.local"
;
include
"/etc/bind/named.conf.default-zones"
;
include
"/etc/bind/named.manager.conf"
;
|
master)
vim
/etc/bind/named
.conf.options
options {
directory
"/var/cache/bind"
;
recursion
yes
;
allow-query { any; };
allow-transfer { 172.25.207.156; };
# disable zone transfers by default
notify
yes
;
also-notify{
172.25.207.156;
};
forwarders {
114.114.114.114;
};
forward only ;
dnssec-
enable
no;
dnssec-validation no;
auth-nxdomain no;
# conform to RFC1035
listen-on-v6 { none; };
};
|
slave)
vim
/etc/bind/named
.conf.options
key
"rndc-key"
{
algorithm hmac-md5;
secret
"v0riJFttDdyg9um2/TYaFA=="
;
};
controls {
inet 127.0.0.1 port 953
allow { 127.0.0.1; } keys {
"rndc-key"
; };
};
options {
directory
"/var/cache/bind"
;
listen-on { 172.25.207.156; };
listen-on-v6 { none; };
dnssec-
enable
no;
dnssec-validation no;
auth-nxdomain no;
# conform to RFC1035
recursion
yes
;
allow-query { any; };
allow-transfer { none; };
# disable zone transfers by default
forwarders {
114.114.114.114;
114.114.115.115;
};
forward only;
};
|
master)
vim
/etc/bind/named
.manager.conf
zone
"beta.uledns.com"
IN {
type
master;
file
"/etc/bind/zones/beta.uledns.com.zone"
;
allow-update { none; };
};
|
slave)
vim
/etc/bind/named
.manager.conf
zone
"beta.uledns.com"
IN {
type
slave;
file
"beta.uledns.com.zone"
;
masters { 172.25.207.146; };
allow-transfer { none; };
};
|
# 启动 bind9 服务
service bind9 start
|
install namedmanager webui on master
#如果是使用远程的mysql-server本地就不需要安装mysql-server服务端,但是需要按照一个mysql-client客户端;
apt-get
install
-y git nginx php5 php5-cli php5-soap php5-intl php5-xml php5-fpm php5-ldap php5-mysql php5-mysqlnd mysql-server-5.6
mkdir
/data/namedmanager/
;
cd
/data/namedmanager/
git clone https:
//github
.com
/jethrocarr/namedmanager
.git .
以下两条命令是本地安装数据库的操作,如果数据库在远端,则可以跳过;
mysql -h127.0.0.1 -uroot -p123456
create database namedmanager default charset utf8;
cd
/data/namedmanager/sql/
mysql -h127.0.0.1 -uroot -proot namedmanager < version_20171107_install.sql
mysql -h127.0.0.1 -uroot -proot namedmanager < version_20171107_upgrade.sql
mkdir
-p
/var/log/namedmanager/
cp
/data/namedmanager/resources/namedmanager-www
.
cron
/etc/cron
.d
/namedmanager-www
cp
/data/namedmanager/resources/namedmanager-bind
.
cron
/etc/cron
.d
/namedmanager-bind
# 注意修改脚本中的路径 /usr/share ==> /data
cat
/etc/cron
.d
/namedmanager-www
# Synchronise any changes to Route53
*
/1
* * * * root
cd
/data/namedmanager/htdocs/include/cron/
; php -q route53.php >>
/var/log/namedmanager/cron-route53
2>&1 >>
/var/log/namedmanager/cron-route53
2>&1
cat
/etc/cron
.d
/namedmanager-bind
# check for new configuration every minute
*
/1
* * * * root php -q
/data/namedmanager/bind/namedmanager_bind_configwriter
.php >>
/var/log/namedmanager_bind_configwriter
# PHP slowly leaks memory, restart the process weekly to prevent it getting too large over months
01 01 * * 0 root
/etc/init
.d
/namedmanager_logpush
restart >>
/dev/null
2>&1
touch
/var/log/messages
cp
/data/namedmanager/resources/namedmanager_logpush
.rcsysinit
/etc/init
.d
/namedmanager_logpush
# 修改 . /etc/rc.d/init.d/functions ==> . /lib/lsb/init-functions
# 修改脚本中的路径 /usr/share ==> /data
chmod
+x
/etc/init
.d
/namedmanager_logpush
#配置数据库连接信息
cd
/data/namedmanager/htdocs/include/
;
cp
sample-config.php config-settings.php
$config[
"db_host"
] =
"...."
;
//
hostname
of the MySQL server
$config[
"db_name"
] =
"namedmanager"
;
//
database name
$config[
"db_user"
] =
"....."
;
//
MySQL user
$config[
"db_pass"
] =
"...."
;
//
MySQL password (
if
any)
# 如果没有配置https,需要在 /data/namedmanager/htdocs/index.php 43行 注释以下内容
//if
(!$_SERVER[
"HTTPS"
])
//
{
//
exit
(0);
//
}
### 设置bind
cd
/data/namedmanager/bind/include
;
cp
sample-config.php config-settings.php
$config[
"api_server_name"
] =
"ns1.beta.uledns.com"
;
//
Name of the DNS server (important: part of the authentication process)
$config[
"api_auth_key"
] =
"ultrahighsecretkey"
;
//
API authentication key
apt-get
install
nginx
vim
/etc/nginx/conf
.d
/bind
.conf
server {
listen 80;
server_name 172.25.207.146 ns1.beta.uledns.com;
charset utf8;
location / {
root
/data/namedmanager/htdocs/
;
index index.html index.php;
}
location ~ \.php$ {
root
/data/namedmanager/htdocs
;
fastcgi_pass unix:
/var/run/php5-fpm
.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
php5-fpm
nginx
## 浏览器访问 192.168.1.11
user: setup
pwd
: setup123
|