2019-04-12day31集群搭建

1、什么是集群?

簡單地說,集群就是一堆機器在做同一件事。

例如:www.jd.com提供賣東西服務(wù)這就是一件事,可能是幾千臺服務(wù)器,在背后運轉(zhuǎn)支撐這個網(wǎng)站。

www.baidu.com 看著就是一個搜索框,背后可能是上萬臺服務(wù)器。

2、為什么企業(yè)要用集群?

a、業(yè)務(wù)7x24小時服務(wù),需要多臺機器同時工作,互為實時備份。

b、高并發(fā)訪問,需要多臺服務(wù)器同時提供服務(wù)。

3、集群的特點:

a、數(shù)據(jù)量、用戶多

b、7*24持續(xù)服務(wù)

c、高并發(fā)

d、用戶分布廣泛,網(wǎng)絡(luò)情況復雜

4、形象描述集群

獨行快,眾行遠。


架構(gòu)比喻:












從后往前搭建:


IP地址規(guī)劃:

目錄規(guī)范:



基礎(chǔ)優(yōu)化:

1、規(guī)范目錄

mkdir?-p?/server/tools

mkdir?-p?/server/scripts

2、配置雖有主機域名解析

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

EOF

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、安全優(yōu)化

# 4.1、關(guān)閉selinux

sed?-i?'s#SELINUX=.*#SELINUX=disabled#g'?/etc/selinux/config

sed?-i?'s/SELINUX=enforcing/SELINUX=disabled/'?/etc/selinux/config

grep?SELINUX=disabled?/etc/selinux/config

setenforce?0

getenforce

4.2關(guān)閉防火墻

systemctl stop firewalld

systemctl disable firewalld

5、添加普通用戶并提權(quán)。

# 提權(quán)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.字符集

/etc/locale.comf


# 設(shè)置系統(tǒng)中文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

7.時間同步設(shè)置

yum?install?ntpdate?-y

/usr/sbin/ntpdatentp3.aliyun.com


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

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

crontab?-l


8.基礎(chǔ)優(yōu)化操作項:提升命令行操作安全性(可選優(yōu)化)

#?提升命令行安全(可選配置)

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

#設(shè)置會話超時時間為300秒

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

設(shè)置命令行

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

tail?-3?/etc/profile

.?/etc/profile

9.基礎(chǔ)優(yōu)化操作項:加大文件描述符

# 實例演示:加大文件描述

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

tail -1 /etc/security/limits.conf

ulimit -SHn? 65535

ulimit -n #<==命令方式查看配置結(jié)果

10、優(yōu)化內(nèi)核

cat >>/etc/sysctl.conf<<EOF

net.ipv4.tcp_fin_timeout = 2

net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_tw_recycle = 1

net.ipv4.tcp_syncookies = 1

net.ipv4.tcp_keepalive_time = 600

net.ipv4.ip_local_port_range = 4000? ? 65000

net.ipv4.tcp_max_syn_backlog = 16384

net.ipv4.tcp_max_tw_buckets = 36000

net.ipv4.route.gc_timeout = 100

net.ipv4.tcp_syn_retries = 1

net.ipv4.tcp_synack_retries = 1

net.core.somaxconn = 16384

net.core.netdev_max_backlog = 16384

net.ipv4.tcp_max_orphans = 16384

#以下參數(shù)是對iptables防火墻的優(yōu)化,防火墻不開會提示,可以忽略不理。

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、常用軟件安裝

基礎(chǔ)優(yōu)化操作項:安裝系統(tǒng)常用軟件

CentOS6和CentOS7都要安裝的企業(yè)運維常用基礎(chǔ)工具包

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

CentOS7要安裝的企業(yè)運維常用基礎(chǔ)工具包

yum?install?psmisc?net-tools?bash-completion?vim-enhanced?-y

12、優(yōu)化ssh遠程連接效率

簡直root遠程連接

修改默認22端口,改為52113

監(jiān)聽內(nèi)網(wǎng)服務(wù)器IP


13、修改yum.conf

保留yum安裝的軟件包

將yum.conf中的keepcache=0改為keepcache=1,為日后一鍵安裝網(wǎng)站集群留好rpm及依賴工具包。

14. 鎖定關(guān)鍵系統(tǒng)文件如/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow、/etc/inittab,處理以上內(nèi)容后把chattr、lsattr改名為oldboy,轉(zhuǎn)移走,這樣就安全多了。

15.清空/etc/issue、/etc/issue.net,去除系統(tǒng)及內(nèi)核版本登錄前的屏幕顯示。

16、清除多余的系統(tǒng)虛擬用戶賬號。

17、為grup引導菜單加密碼。

18、禁止主機被ping(內(nèi)核參數(shù))。

19、打補丁并升級已知的漏洞。

yum? ?update



ctrl+z退出


20、精簡開機自啟動服務(wù):

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

保留服務(wù):

sshd|crond|sysstat|rsyslog|NetworkManager|irqbalance


企業(yè)生產(chǎn)最小化原則:

1、安裝軟件包最小化。

2、權(quán)限最小化 visudo。

3、目錄文件權(quán)限最小化。

4、自啟動服務(wù)最小化。

5、服務(wù)運行用戶最小化(盡量不用root跑服務(wù))。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容