DNS服务器(svr7) —— 192.168.10.7
DNS客户机(pc207、svr7、真机、……) —— 192.168.10.207、192.168.10.7 大多数连网程序(浏览器、ping、……)只能使用默认/首选DNS DNS测试工具(nslookup、host)使用指定的DNS
host www.baidu.com
host www.baidu.com DNS服务器地址
如何指定默认/首选DNS服务器的地址:
vim /etc/resolv.conf
nameserver DNS服务器的IP地址 或者
nmcli con mod 连接名 ipv4.dns DNS服务器的IP地址
nmcli con up 连接名
DNS的用途: 为客户机提供“域名??的IP地址是多少?”信息查询服务
DNS服务器(svr7) —— 192.168.10.7 任务1:配置tedu.cn的权威DNS 任务2:特殊解析应用(可选) 1)一个域名 --> 多个IP地址(DNS轮询) 修改tedu.cn域的地址库文件, www.tedu.cn. A IP地址1 www.tedu.cn. A IP地址2 www.tedu.cn. A IP地址3
2)多个未知站点.tedu.cn --> 同一个IP地址(泛域名解析) 修改tedu.cn域的地址库文件,
- A IP地址
任务3:智能解析(为不同客户机给不同的解析结果)
C:\Users\iamking> nslookup www.baidu.com 服务器: ACA3000A.ipt.aol.com Address: 172.163.0.10
非权威应答: 名称: www.a.shifen.com Addresses: 61.135.169.125 61.135.169.121 Aliases: www.baidu.com
PC机 ==》交换机 ==》路由器 ==》路由器 ==》交换机 ==》服务器
上述设备中,哪一类设备的数量最多/最少? 服务器、路由器
一台PC机,要配置连接到互联网需要哪些参数? 1)IP地址/掩码 2)默认网关 3)DNS服务器
互联网中的DNS服务器的作用? 为客户机提供XX域名的IP地址
当一台PC机通过浏览器访问www.baidu.com网址时 —— 第一步,先查找到www.baidu.com的IP地址(A) 本地缓存 --> /etc/hosts文件 --> /etc/resolv.conf中的nameserver指定的DNS服务器
第二步,向www.baidu.com网站服务器请求网页 封装一个HTTP请求包,发给IP地址A www.baidu.com网站服务器处理此请求,反馈HTTP应答 PC机成功收到应答,正确显示网页结果
从DNS客户机的角度来看 —— 指定需要查找域名的IP地址时去问哪一台DNS服务器 永久配置:
nmcli con mod ens33 .. .. ipv4.dns DNS服务器地址
nmcli con up ens33
临时配置:
vim /etc/resolv.conf
nameserver DNS服务器地址 手动指定:
host www.baidu.com DNS服务器地址
计算机/上网客户机 ==》首选DNS(缓存)==》官方/权威DNS
任务1:基础DNS服务器搭建 1)装包 bind bind-chroot 2)配置
vim /etc/named.conf —— 负责的区域、地址库存在哪
.. ..
named-checkconf 【正常无输出】
vim /var/named/地址库文件 —— 记录“域名-->IP地址”
named-checkzone 区域名 /var/named/地址库文件
【正常显示OK】
3)起服务 named
任务2:DNS轮询、泛域名解析 1)DNS轮询 —— 一个域名 --》多个IP地址 修改区域的地址库记录 www.tedu.cn. A IP地址1 www.tedu.cn. A IP地址2 www.tedu.cn. A IP地址3 www.tedu.cn. A IP地址4 2)泛域名解析 —— 不确定站点名.tedu.cn --》固定IP地址 修改区域的地址库记录
- A 固定IP地址
普通DNS: 任何客户机来查询某个域名A,获得的结果IP地址相同
智能DNS: 不同客户机(联通、电信、……)来查询某个域名A,获得的结果IP地址不相同
任务3:智能DNS 用途:针对XX域名,为不同的客户机提供不同的解析结果 1)装包 bind bind-chroot 2)配置
vim /etc/named.conf
view 类别1 { .. .. 第1类客户机包括哪些地址 .. .. 为这些客户机使用哪一个地址库文件(a) }; view 类别2 { .. .. 第2类客户机包括哪些地址 .. .. 为这些客户机使用哪一个地址库文件(b) }; 3)起服务 named
剁椒鱼头、.. .. 菜谱
地址库文件 —— 菜谱(记录XX菜XX价格) XX域名 —— 菜名 XX价格 —— 菜价 客户机分类(联通、移动、.. ..) —— 顾客分类(VIP会员、普通顾客) VIP会员 ---- 剁椒鱼头 38元 普通顾客 ---- 剁椒鱼头 48元
基础DNS配置参考 ——
[root@svr7 ~]# cat /etc/named.conf options { directory "/var/named"; }; zone "tedu.cn" { type master; file "tedu.cn.zone"; };
[root@svr7 ~]# cat /var/named/tedu.cn.zone $TTL 1D @ IN SOA @ root.tedu.cn ( 1 4H 4H 4H 1D ) @ NS ns.tedu.cn. ns.tedu.cn. A 192.168.10.7 www.tedu.cn. A 114.115.116.117 bbs.tedu.cn. A 192.168.10.7
智能DNS配置参考 —— 主配置文件: [root@svr7 ~]# vim /etc/named.conf options { directory "/var/named"; }; view "svr7" { match-clients { 192.168.10.7; }; zone "tedu.cn" { type master; file "tedu.cn.zone.1"; }; }; view "pc207" { match-clients { 192.168.10.207; }; zone "tedu.cn" { type master; file "tedu.cn.zone.2"; }; };
地址库文件: [root@svr7 ~]# cat /var/named/tedu.cn.zone.1 $TTL 1D @ IN SOA @ root.tedu.cn ( 1 4H 4H 4H 1D ) @ NS ns.tedu.cn. ns.tedu.cn. A 192.168.10.7 www.tedu.cn. A 1.1.1.1 bbs.tedu.cn. A 192.168.10.7
[root@svr7 ~]# cat /var/named/tedu.cn.zone.2 $TTL 1D @ IN SOA @ root.tedu.cn ( 1 4H 4H 4H 1D ) @ NS ns.tedu.cn. ns.tedu.cn. A 192.168.10.7 www.tedu.cn. A 2.2.2.2 bbs.tedu.cn. A 192.168.10.7
快速清理DNS服务端配置:
yum -y remove bind bind-chroot
rm -rf /etc/named* /var/named
排错方法 —— 看系统日志/日记 时间、地点(主机名/IP地址)、人物(进程名)、事情
关注点:error、failed、not、warning、named、tedu.cn.zone、……
1)先清空日志文件
> /var/log/messages
2)故意改错/etc/named.conf
vim /etc/named.conf
.. ..
systemctl restart named
3)查看日志内容变化
less /var/log/messages //分页阅读文件内容
系统日志/日记文件记录的消息格式: 时间、地点(主机名)、人物(程序)、事件
公共消息文件 /var/log/messages,记录了系统及大多数服务的启动/停止/配置异常等重要信息 安全日志 /var/log/secure,记录了用户登录的信息
[root@svr7 named]# uptime 10:19:20 up 1:42, 1 user, load average: 0.00, 0.01, 0.05
最近1、5、15分钟之内的平均负载(CPU处理的任务数)
管道操作(把命令1的显示结果交给命令2处理): 命令1 | 命令2
重定向输出操作(把命令1的显示结果保存为文件2): 命令1 > 文件2
列出名称中包含指定关键词的进程的编号:
pgrep 关键词
列出所有进程的编号(. 代表任何字符):
pgrep .
统计进程数量:
pgrep -c .
列出系统中所有的网络连接信息
netstat -anptu
-a,列出所有网络连接 -n,以数字方式显示结果 -p,列出与网络连接相关的进程 -t,列出TCP连接 -u,列出UDP连接
练习:使用手动监控工具 1)使用 uptime 检查CPU负载 2)使用 who | wc -l 了解用户登录情况 3)使用 pgrep -c . 检查进程数 4)使用 iptraf-ng 检查网络流量
SNMP,简单网络管理协议 Agent
SNMP,简单网络管理协议(几乎所有的路由器/交换机默认支持)
练习:准备zabbix服务器环境 1)设置本机域名映射
vim /etc/hosts
192.168.10.7 zbx.tedu.cn 192.168.10.8 svr8.tedu.cn 2)清理旧的LAMP平台
yum -y remove httpd mariadb-server mariadb php php-mysql
rm -rf /etc/httpd/ /var/lib/mysql /var/www
3)安装并启用新的LAMP平台环境
yum -y install httpd mariadb-server mariadb php php-mysql
systemctl restart httpd mariadb
systemctl enable httpd mariadb
4)禁用防火墙、禁用SELinux机制 .. ..
常见问题: 安装LAMP平台时失败,提示 .. .. 软件包xxx需要 php-common-5.5.56.x86_64(低版本) .. .. 已经安装 php-common-5.5.60.x86_64(高版本) 原因:系统中有已经安装了某个软件的高版本,但是你将要安装的这一套软件又需要低版本,所以因冲突导致失败 解决:
yum -y remove httpd-tools php-common mariadb-libs
yum -y install httpd mariadb-server mariadb php php-mysql
修复:
yum -y install postfix
yum -y install 软件包名... 【找软件源】
yum -y install 软件包安装文件.rpm ... 【找本地已经下载.rpm文件,如果需要依赖包再找软件源】
获取软件资源: zabbix-server目录 ==>包括9个.rpm包【适用于CentOS7.5系统】
安装zabbix服务器 —— 1)通过WinSCP将zabbix-server目录上传到虚拟机的/root目录下 2)离线安装zabbix相关软件
yum -y install /root/zabbix-server/*.rpm
3)检查安装结果
yum list "zabbix*"
.. .. 已安装的软件包 zabbix-agent.x86_64 3.4.14-1.el7 installed zabbix-get.x86_64 3.4.14-1.el7 installed zabbix-server-mysql.x86_64 3.4.14-1.el7 installed zabbix-web.noarch 3.4.14-1.el7 installed zabbix-web-mysql.noarch 3.4.14-1.el7 installed
常见问题: 如果虚拟机系统是CentOS 7.3,配置的yum源也是CentOS 7.3 ==》21个包 先装zabbix相关包,后装LAMP
建议解决办法:重新装一个CentOS 7.5
安装结果需要调整的地方:
- 网站界面 zabbix-web 【需要更改配置】 调整PHP环境支持当前时区
vim /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai //注意删除行首的#号 2. 服务端zabbix-server 【需要更改配置】 1)准备初始数据库资料
mysql -uroot
create database zabbix character set utf8 collate utf8_bin; grant all on zabbix.* to zabbix@localhost identified by 'pwd@123'; quit;
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -ppwd@123 zabbix
2)告诉zabbix服务端如何访问数据库资料
vim /etc/zabbix/zabbix_server.conf
DBPassword=pwd@123 //注意删除行首的#号
- 客户端 zabbix-agent 【默认配置】
常见错误: 1)访问zabbix初始页面时 页面提示 –Time zone for PHP is not set (configuration parameter "date.timezone"). 原因:date.timezone没有启用(忘记改了,或者前面#没有删除,改完后没有重启httpd服务)
2)网页提示 连接数据库失败 Details–Error connecting to database: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) 原因:mariadb服务没有启动
3)网页提示“未知数据库zabbix” Details–Error connecting to database: Unknown database 'zabbix' 原因:没有创建名为zabbix的库
4)网页提示:前端详细资料与zabbix数据库不匹配 Details–The frontend does not match Zabbix database. 原因:zabbix库里是空的(没有导入初始库资料,或者导入不成功)
5)以用户Admin登入zabbix平台页面报错 –strtotime(): Invalid date.timezone value 'Asia/Shanhai', we selected the timezone 'UTC' for now 原因:设置的时区名称有错误
zabbix控制台的用户 —— 管理员 Admin,密码zabbix 来宾用户 guest, 其他由管理员添加的用户(比如ntdadm) ……
Linux系统的配置文件中,
表示注释、说明
注意观察监控项名称: Agent ping ===》 这个zabbix客户端是否能ping通 Available memory ===》 可用内存 Processor load (1 min average per core) ===》1分钟平均负载 Processor load (5 min average per core) ===》5分钟平均负载 Processor load (15 min average per core) ===》15分钟平均负载 Number of logged in users ===》登录用户数 Number of processes ===》运行的进程数
键值(如何获取监控数据的预先定义好的方法) 入站流量监控对应的键值: net.if.in[ens33] 出站流量监控对应的键值: net.if.out[ens33]
常见问题: 1)无法添加对网卡ens33的监控项,提示 .. .. exists 原因:已经存在自动发现的网卡流量监控项 Network interface discovery: Incoming network traffic on ens33 Network interface discovery: Outgoing network traffic on ens33 解决:先删除上述监控项,重新添加 2)被监控主机zabbix server右侧的可用性标记ZBX是灰色的 原因: /etc/zabbix/zabbix_server.conf文件中数据库连接有误(没设置密码、密码有错),或者SELinux没有关闭 解决:修正DBPassword设置,重启zabbix-server服务,关闭SELinux 3)被监控主机zabbix server右侧的可用性标记ZBX是红色的 原因:zabbix客户端服务连接失败(忘记启动zabbix-agent服务,或者连接设置有错误) 解决:启动zabbix-agent服务,刷新网页 4)查看网卡流量监控图形时,入站流量有数据、出站流量没有 原因:出站流量的监控项设置有错误 5)查看各种监控图形时,图形中都没有数据 原因:zabbix服务端无法成功连接数据库(DBPassword设置有问题) 6)zabbix-server服务启动失败,或者启动时一直卡着不动 原因:系统资源不足 解决办法:增加内存,虚拟机关机后重开
vim /etc/zabbix/zabbix_server.conf
CacheSize=64M
systemctl restart zabbix-server
补充:手动测试工具(检查是否能获取到监控结果)