老男孩linux培训的一名网络班初级学生期中实战架构作业文档目录展示
特别说明:(内部学员博文,非老男孩的学生可以绕过本博文)
<?xml:namespace prefix="o">?xml:namespace>
请所有老男孩linux培训的学生向这位网络班的同学学习,特别是学习面授班的学生,这正应了那句话,“师傅领进门,修行在个人”,看到这个同学的期中实战考试总结文档,我就想起了很久以前的我,我不禁问自己,难道只有经历过痛苦有故事的人才能做到这种努力的程度么?
老男孩老师在此衷心的希望,希望所有其他没有努力(或努力不到位)的同学,多仔细思考下,你比别人差的原因(我们都是正常人,你为什么就比他差?)。
该同学的期中实战考试作业文档目录如下(200多页的文档):
对于一个运维初学者,这份实战考试文档,是非常专业规范,自动化的架构设计和实战集群架构部署实现文档。
面授班的同学可以到教室查阅该目录的完整文档
近期将安排该同学给全体做一个视频语音分享,他学的动力和决心到底从哪获得的。
亲爱的同学们,人生一世就那么几十年,黄金学习期就这么几年,过了这个阶段,人有家庭的拖累精力就确实不行了,另外,记忆身体都是衰退的。此时不搏何时搏?
既然选择了Linux运维,就只能风雨兼程,老男孩老师会一直相伴在你的左右。
目录... 1
1.概要需求说明... 8
1.1.架构逻辑图... 8
1.1.1.网站架构逻辑图一... 8
1.1.2.网站架构逻辑图二... 9
1.2.涉及的技术范围与内容... 9
1.3.服务器硬件需求... 10
1.3.1.实际生产工作中硬件需求与服务安排... 10
1.3.2.作业部署组合配置建议... 10
2.概要配置说明... 11
2.1.
硬件配置及IP机器名... 11
2.2.软件及服务说明... 11
2.2.1.配置规范... 11
2.2.2.系统安装... 12
2.2.3.
iptables. 12
2.2.4.数据分发... 12
2.2.5.软件安装与服务配置... 12
2.2.6.
nagios+cacti监控... 12
2.3.脚本与目录说明... 12
3.系统安装... 17
3.1.操作系统... 17
3.2.安装过程... 17
4.系统优化... 18
4.1.设置升级源... 18
4.2.设置系统时间同步... 18
4.3.修改主机名... 18
4.4.优化内核参数... 18
4.5.增加文件描述符限制... 19
4.6.
使ctrl+alt+del关机键无效... 19
4.7.禁止开机自启动无用服务... 20
4.8.
禁止root通过SSH远程登录并更改SSH端口... 20
4.9.
chattr锁定关键系统文件... 20
4.10.安装系统性能监控软件监控调试软件... 21
4.11.配置系统日志审计... 21
4.12.
linux系统一键优化脚本... 21
5.
批量无人值守安装CentOS操作系统... 24
5.1.
pxe+dhcp+nfs+kickstart无人值守安装部署... 24
5.1.1.
安装apache,上传系统优化脚本... 24
5.1.2.
pxe+dhcp+nfs+kickstart安装脚本... 26
5.1.3.安装过程截图... 30
6.
iptables配置... 31
6.1.
脚本configure_iptables.sh批量配置iptables防火墙... 31
6.2.
内网服务器通过iptables nat共享上网配置... 35
7.批量分发部署... 36
7.1.
解决ifconfig找不到路径的问题... 36
7.2.
分发sshkey. 37
7.2.1.
expect分发sshkey. 37
7.2.1.1.
fenfa_sshkey.exp. 37
7.2.1.2.
fenfa_sshkey.sh. 38
7.3.分发文件... 38
7.3.1.
fenfa_file.sh. 38
7.3.2.使用举例... 39
7.4.
分发host. 40
8.软件安装... 41
8.1.
配置nfs. 41
8.1.1.
服务器安装配置nfs脚本... 41
8.1.2.
客户端配置nfs. 42
8.2.
配置rsync+inotify. 42
8.2.1.
配置rsync服务器脚本... 42
8.2.2.
配置rsync客户端脚本(lvs-02). 44
8.2.3.
安装inotify(lvs-02). 44
8.2.4.
配置inotify同步脚本 (lvs-02). 45
8.2.5.测试同步... 45
8.3.
安装配置mysql. 47
8.3.1.安装说明... 47
8.3.2.
自动安装mysql脚本... 47
8.3.3.
安装mysql过程... 48
8.3.4.
自动安装mysql多实例脚本... 49
8.3.4.1.
mysql文件... 49
8.3.4.2.
my.cnf文件... 50
8.3.4.3.
install_mysql_instance.sh. 52
8.3.5.
安装mysql多实例过程... 54
8.3.6.
配置mysql主从... 55
8.3.6.1.
主库上操作脚本mysql_master.sh. 55
8.3.6.2.
从库上操作脚本mysql_slave.sh. 57
8.3.6.3.设置主库只读... 58
8.3.7.
安装mysql-proxy. 59
8.3.7.1.
一键安装脚本install_mysql_proxy.sh. 59
8.3.7.2.
配置mysql-proxy为服务... 60
8.3.7.3.
设置服务脚本权限并设置为开机启动(/etc/rc.local):... 62
8.3.7.4.测试... 63
8.3.7.5.
mysql-proxy选项简要说明... 65
8.3.7.6.
mysql-proxy常见问题... 66
8.4.
安装memcached. 66
8.4.1.
一键安装脚本install_memcached.sh. 66
8.5.
安装apache. 67
8.5.1.一键安装脚本... 67
8.5.2.安装说明... 69
8.6.
安装nginx. 69
8.6.1.一键安装脚本... 69
8.7.
安装php. 70
8.7.1.安装说明... 70
8.7.2.
一键安装php脚本+apache. 70
8.7.3.
一键优化php脚本+apache. 72
8.7.4.
一键安装php脚本+nginx. 75
8.7.5.
一键优化php脚本+nginx. 79
8.7.6.
配置nginx fastcgi的相关文件与安装脚本... 82
8.7.6.1.
configure_nginx_php_fascgi.sh. 82
8.7.6.2.
php-fpm.conf与默认php-fpm.conf.default对比... 83
8.7.6.3.
nginx.conf. 83
8.7.6.4.
extra/www.conf. 84
8.7.6.5.
extra/blog.conf. 85
8.7.6.6.
extra/bbs.conf. 86
8.7.6.7.
extra/wiki.conf. 87
8.7.7.
php.ini中配置session共享... 88
8.8.
安装lvs和keepalived. 88
8.8.1.
DR服务器:安装lvs脚本install_lvs_dr.sh. 88
8.8.2.
DR服务器:安装keepalived脚本... 89
8.8.3.
DR服务器:DR模式主从master及backup机器keeplived配置对比... 90
8.8.4.
RS服务器:配置VIP,并执行ipvs脚本... 91
8.8.5.
配置/etc/rc.local文件... 93
8.9.
安装phpMyAdmin. 93
9.
apache上项目部署... 95
9.1.
wordpress. 95
9.1.1.准备工作... 95
9.1.2.
下载安装wordpress. 96
9.1.3.
建立wordpress数据库及帐号... 96
9.1.4.
设置权限与上传目录(nfs). 99
9.1.5.安装成功... 100
9.1.6.
撤消数据库create权限... 100
9.1.7.
自动安装wordpress脚本... 100
9.1.7.1.安装数据库及用户脚本... 100
9.1.7.2.
安装wordpress脚本... 102
9.2.
DedeCMS. 104
9.2.1.
DedeCMS说明... 104
9.2.2.准备工作... 106
9.2.3.建立数据库及帐号... 107
9.2.4.安装过程... 107
(1)
程序安装过程:... 107
(2)
解压tar包:... 107
(3)
设置权限与上传目录(nfs). 108
(4)
浏览器打开http://www.etiantian.org进行安装... 108
9.2.5.
撤消数据库create权限... 110
9.2.6.安装过程中出现的问题... 111
(1)
没有体验数据包文件,请检查是否下载.?. 111
9.3.
Discuz. 111
9.3.1.
Discuz环境要求... 111
9.3.2.准备工作... 112
9.3.3.建立数据库及帐号... 113
9.3.4.
设置权限与上传目录(nfs). 114
9.3.5.安装过程... 115
9.4.
wiki. 118
9.4.1.
wiki环境要求... 118
9.4.2.准备工作... 118
9.4.3.建立数据库及帐号... 119
9.4.4.解压安装文件与设置权限... 120
9.4.5.安装过程... 121
9.4.6.
配置nfs共享存储... 124
10.
nginx上项目部署... 124
10.1.
解压在apache上安装的web项目tar压缩包... 124
10.2.
配置nfs. 125
10.3.
配置nginx日志轮询... 127
11.
apache与nginx的rewrite配置... 128
11.1.
wordpress配置rewrite. 128
11.1.1.
apache. 128
11.1.1.1.设置固定链接... 128
11.1.1.2.
配置httpd-vhosts.conf. 129
11.1.2.
nginx. 129
11.1.3.
检查rewrite结果... 129
11.1.4.
附:wordpress结构标签... 130
11.2.
Discuz配置rewrite. 131
11.2.1.
apache. 131
11.2.2.
nginx. 132
12.
nagios监控服务部署与配置... 132
12.1.
服务端安装nagios脚本... 132
12.2.
客户端安装nagios脚本... 135
12.3.
配置基础contacts.cfg与commands.cfg. 139
12.4.
基础服务(load,mem,swap,disk,iostat)监控... 141
12.4.1.
配置hosts.cfg脚本... 141
12.4.1.1.
host.list. 141
12.4.1.2.
build_hosts_cfg.sh. 141
12.4.2.执行过程... 142
12.4.3.
配置services.cfg脚本... 143
12.4.3.1.
配置services模板... 143
12.4.3.2.
commands.cfg中加入check_nrpe的插件配置... 145
12.4.3.3.
批量生成基础service配置文件... 145
12.4.3.4.
解决错误: It appears as though you do not have permission to view information for any of the hosts you requested. 147
12.4.4.服务器端检查配置结果... 148
12.5.
web服务监控... 149
12.5.1.
commands.cfg中加入check_weburl的插件配置... 149
12.5.2.
templates.cfg中加入模板配置... 149
12.5.3.
批量生成checkurl service配置文件脚本... 149
build_checkurl_cfg.sh. 149
webhost.list. 150
12.5.4.
生成的service配置文件... 150
12.5.5.服务器端检查配置结果... 151
12.6.
lvs监控... 151
12.6.1.
添加service配置文件... 151
12.7.数据库监控... 152
12.7.1.添加监控用户和权限... 152
12.7.2.
配置命令commands.cfg. 152
12.7.3.
配置services模板... 153
12.7.4.
添加service配置文件... 154
12.7.5.服务器端检查配置结果... 155
12.8.
安装pnp. 155
12.8.1.
一键安装pnp脚本... 155
12.8.2.
配置nagios. 157
12.8.2.1.
执行vi nagios.cfg +835,修改配置文件... 157
12.8.2.2.
修改commands.cfg配置文件... 157
12.8.2.3.服务与主机出图配置... 158
12.8.3.服务器端检查配置结果... 158
12.9.
监控nfs. 159
12.9.1.
监控nfs服务(被动监控). 159
12.9.1.1.
客户端操作(lvs-02). 159
12.9.1.2.
服务器操作(lvs-01). 160
12.9.2.
监控nfs挂载情况(web-01,web-02) (被动监控). 161
12.9.2.1.
客户端操作(web-01,web-02). 161
12.9.2.2.
服务器操作(lvs-01). 162
12.10.
监控memcached. 163
12.11.
监控mysql-proxy(lvs-01). 164
13.
cacti部署与配置... 165
13.1.客户端一键安装脚本... 165
13.2.服务端安装... 167
13.2.1.服务端一键安装脚本... 167
13.2.2.
页面配置cacti. 169
13.2.3.
页面配置设备device. 173
13.2.4.页面配置图形树... 176
13.2.5.按流量归类图形树... 179
14.数据备份... 181
14.1.
web服务器备份... 181
14.1.1.备份访问日志脚本... 181
14.1.2.
备份web项目和资源脚本... 182
14.1.3.
备份/etc脚本... 183
14.1.4.配置定时调度... 184
14.2.
mysql. 184
14.2.1.定时备份脚本... 184
14.2.2.配置定时调度... 186
14.2.3.测试过程... 186
15.日志分析... 187
15.1.根据业务进行日志合并... 187
15.1.1.脚本... 187
15.1.2.配置定时调度... 188
15.2.
分析每日IP访问量前十的IP地址及对应访问量,并发送到管理员邮箱。... 188
15.2.1.统计脚本... 188
15.2.2.测试... 189
15.2.3.配置定时调度... 189
15.3.
按业务分析每日PV及IP量,并发送到管理员邮箱。... 190
15.3.1.统计脚本... 190
15.3.2.测试... 190
15.3.3.配置定时调度... 191
15.4.对数据备份的完整性做检查,每日发送检查报告到管理员邮箱。... 191
15.4.1.检查脚本... 191
check_backup_correct.sh. 191
check_mysql_correct.sh. 193
15.4.2.测试... 194
15.4.2.1.
检查web及/etc备份情况... 194
15.4.2.2.检查数据库备份完整性... 195
15.4.3.配置定时调度... 196
16.
nginx+keepalived实现负载均衡... 196
16.1.说明... 196
16.2.
安装nginx和keepalived. 197
16.3.
配置nginx. 197
16.4.
配置keepalived. 199
16.4.1.
keepalived.conf. 199
16.4.2.
check_nginx.sh. 200
16.5.
配置/etc/rc.local. 201
16.6.测试... 202
17.附录... 204
17.1.
/etc/rc.local文件... 204
17.1.1.
lvs-01. 204
17.1.2.
lvs-02. 204
17.1.3.
mysql-01. 205
17.1.4.
mysql-02. 205
17.1.5.
web-01. 206
17.1.6.
web-02. 207
17.2.
定时任务/var/spool/cron/root. 208
17.2.1.
lvs-01. 208
17.2.2.
lvs-02. 208
17.2.3.
mysql-01. 208
17.2.4.
mysql-02. 208
17.2.5.
web-01. 209
17.2.6.
web-02. 209
志强同学曾经说过东旭同学是他不可超越的,谁又能超越这个同学?
本文出自 “老男孩linux培训” 博客,谢绝转载!