day31集群架构基础介绍

1、什么是集群?
集群就是一堆机器做同一件事
eg: 网站背后提供服务这就一件事,可能是几千台服务器,在背后运转支撑这个网站。
2、为什么要用集群
a、7*24服务,就需要多台机器同时工作,互为实时备份。
b、高并发访问,需要多台服务器同时提供服务。
3、集群特点
a、数据量大、用户多                      
b、7*24小时持续服务
b、持续服务、高可用  高并发
c、用户分布广泛,网络情况复杂

重点基础优化:

1、 规范目录

mkdir -p /server/tools

mkdir -p /server/scripts
2、配置所有主机域名解析
cat >/etc/hosts<

[root@oldboyedu ~]# cat /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

172.16.1.5 lb01

172.16.1.6 lb02

172.16.1.7 web01

172.16.1.8 web02

172.16.1.9 web03

172.16.1.31 nfs01

172.16.1.41 backup

172.16.1.51 db01 db01.etiantian.org

172.16.1.61 m01

[root@oldboyedu ~]# ping lb01

PING lb01 (172.16.1.5) 56(84) bytes of data.

3.基础优化操作项:更新yum源信息
第一个:就近使用yum源地址,安装软件更快。

  curl -s -o /etc/yum.repos.d/CentOS-Base.repo   http://mirrors.aliyun.com/repo/Centos-7.repo

第二个:安装RHEL/CentOS官方源不提供的软件包

curl -s -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
4、安全优化](interm)
 1、关闭selinux](interm)

[sed -i 's#SELINUX=.*#SELINUX=disabled#g' /etc/selinux/config](interm)

[  sed -i 's/SELINUX=enforcing/SELINUX=disabled/'     /etc/selinux/config](interm)

[grep SELINUX=disabled /etc/selinux/config](interm)

[setenforce 0](interm)

[getenforce](interm)
2、关闭firewalld防火墙服务](interm)
[systemctl stop firewalld](interm)

[systemctl disable firewalld](interm)
5.基础优化操作项:设置普通用户提权操作(可选优化)

提权oldboy可以利用sudo

useradd oldboy

echo 123456|passwd --stdin oldboy

\cp /etc/sudoers /etc/sudoers.ori

echo "oldboy ALL=(ALL) NOPASSWD: ALL " >>/etc/sudoers

tail -1 /etc/sudoers

visudo -c
6.设置系统中文UTF8字符集
[root@oldboyedu ~]# cat /etc/locale.conf

LANG="en_US.UTF-8"

修改命令如下:

cp /etc/locale.conf /etc/locale.conf.ori

echo 'LANG="zh_CN.UTF-8"' >/etc/locale.conf

source /etc/locale.conf

echo $LANG

cp /etc/locale.conf /etc/locale.conf.ori

localectl set-locale LANG="zh_CN.UTF-8"

cat /etc/locale.conf
7.基础优化操作项:时间同步设置
设置系统时间同步

yum install ntpdate -y

/usr/sbin/ntpdate ntp3.aliyun.com

echo '#crond-id-001:time sync by oldboy' >>/var/spool/cron/root

echo "*/5 * * * * /usr/sbin/ntpdate ntp3.aliyun.com >/dev/null 2>&1">>/var/spool/cron/root

crontab -l
8.基础优化操作项:提升命令行操作安全性(可选优化)
提升命令行安全(可选配置)

echo 'export TMOUT=300' >>/etc/profile

echo 'export HISTSIZE=5' >>/etc/profile

echo 'export HISTFILESIZE=5' >>/etc/profile

tail -3 /etc/profile

. /etc/profile
9.基础优化操作项:加大文件描述符
实例演示:加大文件描述

echo '* - nofile 65535 ' >>/etc/security/limits.conf

tail -1 /etc/security/limits.conf

ulimit -SHn 65535

ulimit -n #<==命令方式查看配置结果
10.基础优化操作项:优化系统内核
cat >>/etc/sysctl.conf<
以下参数是对iptables防火墙的优化,防火墙不开会提示,可以忽略不理。

net.nf_conntrack_max = 25000000

net.netfilter.nf_conntrack_max = 25000000

net.netfilter.nf_conntrack_tcp_timeout_established = 180

net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120

net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60

net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120

net.core.wmem_default = 8388608

net.core.rmem_default = 8388608

net.core.wmem_max = 16777216

net.core.rmem_max = 16777216

EOF

sysctl -p

11.基础优化操作项:安装系统常用软件
CentOS6和CentOS7都要安装的企业运维常用基础工具包

yum install tree nmap dos2unix lrzsz nc lsof wget tcpdump htop iftop iotop sysstat nethogs -y

CentOS7要安装的企业运维常用基础工具包

yum install psmisc net-tools bash-completion vim-enhanced -y
12.基础优化操作项:优化SSH远程连接效率
禁止root远程连接

修改默认22端口,改为52113

监听内网服务器IP

练习不动。
13.扩展优化操作项-修改yum.conf文件配置信息
保留yum安装的软件包

将/etc/yum.conf中的keepcache=0改为keepcache=1,为日后一键安装网站集群留好rpm及依赖工具包。
14. 锁定关键系统文件 如/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow、/etc/inittab,
处理以上内容后把chattr、lsattr改名为oldboy,转移走,这样就安全多了。
15. 清空/etc/issue、/etc/issue.net,去除系统及内核版本登录前的屏幕显示。
16. 清除多余的系统虚拟用户账号。
17. 为grub引导菜单加密码(自学)。
18. 禁止主机被ping(内核参数)。
19. 打补丁并升级有已知漏洞的软件。
yum update
20.精简开机自启动服务

systemctl list-unit-files |grep enable|egrep -v "sshd.service|crond.service|sysstat|rsyslog|^NetworkManager.service|irqbalance.service"|awk '{print "systemctl disable",$1}'|bash

systemctl list-unit-files |grep enable

保留服务:

sshd|crond|sysstat|rsyslog|NetworkManager|irqbalance

企业生产最小化原则:
1、安装软件包最小化。

2、用户权限最小化。

3、目录文件权限最小化。

4、自启动服务最小化。

5、服务运行用户最小化。

[root@oldboyedu ~]# netstat -lntup

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 7072/sshd

tcp6 0 0 :::22 :::* LISTEN 7072/sshd

克隆三台:

B1-web服务器1 10.0.0.7/24 172.16.1.7/16 web01

C1-NFS存储服务器 10.0.0.31/24 172.16.1.31/16 nfs01

C2-rsync备份服务器 10.0.0.41/24 172.16.1.41/16 backup

你可能感兴趣的:(day31集群架构基础介绍)