循序漸進linux(二)
500~599 伺服器錯誤
501 內部伺服器錯誤
502 壞的閘道器,後端伺服器不可用或沒有完成響應閘道器伺服器
503 服務當前不可用
504 閘道器超時
網站的併發:
51cto 數十臺:10000
你如何理解網站的併發?
單位時間內能夠處理的最大連線數
公式的訪問量是多少?怎麼計算?
如果有幾萬的PV同時描述數十臺的叢集架構就尷尬了
php提供解析的方式,在配置apache解析動態程式用的是mod_php5.so
配置Nginx解析動態程式常用FastCGI守護程式提供服務
Nginx安裝pcre庫
pcre庫是為了使用Nginx支援具備URI重寫功能的rewrite模組
安裝MariaDB
yum install mariadb-server mariadb
rpm -q mariadb mariadb-server
mysql -uroot -p
建立一個資料庫
create database cmsdb;
建立一個新使用者ixdba,設定密碼,並將該資料庫的許可權賦予此使用者
grant all on cmsdb.* to 'ixdba' identified by 'ixdbapassword';
更新許可權
flush privilege;
quit;
高效能解決方案:如何實現資料共享或資料同步 第二個如何處理故障轉移
資料同步通過rsync軟體或DRBD來實現
故障轉移:主備切換
解決方法:
1.主從複製
簡單說:從伺服器到主伺服器拉取二進位制日誌檔案,然後再將日誌檔案解析成相應的SQL在從
伺服器上重新執行一遍主伺服器的操作,從而保證資料的一致性
keepalived+mysql 95%SLA
一主一從
一主多從
主主互備
雙主多從
2.MMM高可用
master-master Replication Manager 主主複製管理器,雙主多從架構
兩個伺服器互為主從,當可寫的主節點故障,MMM套件可以立刻監控到,然後將服務自動切換到另一個主節點
繼續提供服務 99%SLA
3.Heartbeat/SAN高可用解決方法
成本高,存在腦裂可能 99.990%SLA
4。heartbeat/DRBD高可用解決方案
DRBD distributed replicated block device 用軟體實現的,無共享的、伺服器之間映象塊裝置內容的分散式儲存複製解決方案
實現稍微復,存在腦裂可能 990900%SLA
5.Mysql Cluster高可用解決方案
實現繁瑣,配置複雜,實際應用企業並不多 99.999%SLA
手動同步資料庫
如果DB1上有mysql資料,執行主主互備之前,先要進行資料同步
flush tables with read lock;
開啟另一個終端
cd /var/lib/
tar -zxvf mysql.tar.gz mysql
scp mysql.tar.gz DB2:/var/lib
建立複製使用者並授權
需要關注的重點:
slave_IO_Running
slave_SQL_Running
這兩個就是在從伺服器節點上執行的主從複製執行緒,兩個值都是yes
MMM套件安裝
安裝一個和作業系統版本對應的yum源
monitor節點 yum -y install mysql-mmm*
每個db節點 yum -y install msyql-mmm-agent
通過內建的安全指令碼實現對資料庫安全保護
mysql_secure_installation
php-mysqlnd是php原始碼提供的Mysql驅動連線庫
php-pdo是提供php應用程式層的API介面
安裝教新版本的php
安裝一個epel源
wget http://mirrors.neusoft.edu.cn/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
rpm -ivh epel-release-7-11.noarch.rpm
REMI源,提供了最新的PHP版本的下載和安裝
rpm --import https://rpms.remirepo.net/RPM-GPG-KEY-remi
wget https://rpms.remirepo.net/enterprise/remi-release-7.rpm
rpm -ivh remi-release-7.rpm
檢查REMI是否成功安裝
yum repolist disabled | grep remi
搜尋REMI倉庫是否有可用的包
yum --enablerepo=remi list php
yum --enablerepo=remi-php56 install php
測試php環境的正確性
<?php phpinfo(); ?>
DNS伺服器搭建
DNS服務是通過bind軟體實現的
rpm -qa | grep bind
yum install -y bind bind-utils bind-libs
配置檔案/etc/named.conf
0.0.0.0/0 監聽所有IP
nslookup命令對DNS解析情況進行測試
Samba是一個能讓linux系統應用Microsoft網路通訊協議的軟體
SMB是Server Message Block 服務訊息塊
samba最大的功能就是可以用於linux和windows系統直接的檔案共享和列印檔案
安裝samba yum -y samba samba-client samba-common
配置檔案 /etc/samba/smb.conf
samba由兩個服務組成SMB和NMB
SMB服務啟動才能實現檔案共享
NMB服務是負責解析的,NMB可以把linux系統共享的工作組名稱與IP對應起來
linux安全
yum update 實現作業系統的自動升級
設定tcp_wrappers防火牆
配置檔案 /etc/hosts.allow /etc/hosts.deny
DMZ,可以理解為一個不同於外網或內網的特殊網路區域,重點在保護伺服器本身
DMZ區域將網際網路與區域網隔離開來,放置不含機密資訊的伺服器 web、資料庫、ftp等伺服器
訪問者通過liinux防火牆訪問DMZ中的服務
DMZ區域的伺服器直接連線到外網區域的交換機上,然後通過linux防火牆與網際網路進行互動
安裝rsync
groupadd -g 1020 linuxfans 新建使用者組
more /etc/group | grep linuxfans
newgrp一個使用者在多個使用者組之間進行切換
groupadd group1
groupadd group2
useradd -g group1 -G group2 user1
newgroup group1
newgroup group2
安裝NFS
yum install nfs-utils rpcind -y
建立組使用者指定GID 888
groupadd zuma -g 888
建立組使用者指定UID並加入組
useradd zuma -u 888 -g zuma
LVS等負載均衡是轉發使用者請求的資料包,而nginx反向代理是接受使用者的請求重新發起請求到後面的節點
相關文章
- 循序漸進DIY一個react(二)React
- 循序漸進學加密加密
- 務實發展,循序漸進
- 循序漸進DIY一個react(四)React
- 循序漸進DIY一個react(三)React
- 循序漸進理解TypeScript型別模式TypeScript型別模式
- 循序漸進DIY一個react(一)React
- Matplotlib學習筆記2 - 循序漸進筆記
- 【Python語法】循序漸進理解閉包Python
- 循序漸進掌握遞迴正規表示式遞迴
- 循序漸進的用js實現一個bind()JS
- 使用C#的後端Web API:循序漸進教程後端WebAPI
- 循序漸進 Redis 分散式鎖(以及何時不用它)Redis分散式
- 循序漸進nginx(二):反向代理、負載均衡、快取服務、靜態資源訪問Nginx負載快取
- 自動化響應要循序漸進 不能一蹴而就
- 循序漸進學.Net Core Web Api開發系列【14】:異常處理WebAPI
- 循序漸進學.Net Core Web Api開發系列【4】:前端訪問WebApiWebAPI前端
- 《程式設計的原則》重新發明車輪感悟之循序漸進程式設計
- [翻譯]測試人員成為業務分析師的循序漸進指南
- 循序漸進!開展零信任建設時應做好的16項準備
- 循序漸進學.Net Core Web Api開發系列【9】:常用的資料庫操作WebAPI資料庫
- 循序漸進VUE+Element 前端應用開發(18)--- 功能點管理及許可權控制Vue前端
- 解密prompt系列34. RLHF之訓練另闢蹊徑:循序漸進 & 青出於藍解密
- 循序漸進體驗玩法和故事,從《八方旅人》談遊戲關卡設計遊戲
- 推薦《循序漸進Linux基礎知識伺服器搭建系統管理效能調優叢集應用》附下載連結Linux伺服器
- vuex 漸進式教程Vue
- 漸進均分性(AEP)
- 循序漸進nginx(三):日誌管理、http限流、https配置,http_rewrite模組,第三方模組安裝,結語NginxHTTP
- vuex 漸進式教程(一)Vue
- 漸進深入理解NginxNginx
- 漸進式渲染是什麼?
- Redis 漸進叢集介紹Redis
- 【Linux合集】二進位制安裝mysqlLinuxMySql
- Promise, Generator, async/await的漸進理解PromiseAI
- canvas錐形漸變進度條Canvas
- Linux安裝二進位制PHP7.2LinuxPHP
- Promise原始碼漸進式解讀(三)Promise原始碼
- 巧用 CSS 構建漸變彩色二維碼CSS