AWS 高可用AWS架構方案
AutoScaling,Elastic Load Balancer,CloudFront和Route 53
高可用AWS架構方案-Wordpress
AutoScaling,Elastic Load Balancer,CloudFront和Route 53
- 架構圖
- VPC_SG_IAM_RDS_EFS
- 建立VPC網路
- 建立安全組
- 建立IAM角色
- 建立RDS例項
- 建立EFS檔案系統
- 安裝Apache&PHP,配置wordpress
- 程式碼:
- 配置wordpress
- 登陸方式:
- 測試:
- Bootstrap指令碼
- 使用CloudFront進行內容分發服務
- 建立S3儲存桶
- 建立CloudFront,源為S3儲存桶
- 安裝Wordpress建立WP Offload S3 Lite
- WP Offload S3外掛作用:
- 使用AutoScaling,Elastic Load Balancer和Route 53
- Elastic Load Balancer,建立Application Load Balancer
- Route 53,建立Route 53並使用Alias記錄解析ELB
- Settings
- 建立AMI映象,建立啟動配置(Lauch Configuration),建立Auto Scaling組
- public subnet & Target group
- 驗證
- 清理工作
- Auto Scaling Group
- EC2例項
- AMI
- 快照
- ELB
- Route53
- EFS
- S3
- RDS例項
架構圖
畫圖工具
1. VPC_SG_IAM_RDS_EFS(所有的資源應該使用CloudFormation去建立)
1.1 建立VPC網路
1.2 建立安全組
1.3 建立IAM角色
1.4 建立RDS例項
1.5 建立EFS檔案系統
2. 安裝Apache&PHP,配置wordpress
2.1 配置:
2.2 配置wordpress
2.3 登陸方式:
2.4測試:
2.5 Bootstrap指令碼
1. VPC_SG_IAM_RDS_EFS(所有的資源應該使用CloudFormation去建立)
1.1 建立VPC網路
子網掩碼劃分,最小不能小於/28,aws自己要佔5個IP地址(一個vpc路由器地址,一個做vpc dns伺服器地址,一個預留,一個廣播地址)
1.2 建立安全組
1.3 建立IAM角色
1.4 建立RDS例項
1.5 建立EFS檔案系統
2. 安裝Apache&PHP,配置wordpress
2.1 配置:
yum install httpd24 -y
chkconfig httpd on
yum -y install php55 php55-bcmath php55-devel php55-common php55-cli php55-pecl-apc php55-pdo php55-mysql php55-xml php55-gd php55-mbstring php-pear php55-mysqlnd php55-mcrypt
sudo yum install -y amazon-efs-utils
sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-469e6527.efs.ap-northeast-2.amazonaws.com:/ /var/www/html/
cd /var/www/html/
wget https://wordpress.org/latest.zip
unzip latest.zip
mv wordpress/* /var/www/html/
rm -rf latest.zip wordpress/
chown -R apache:apache /var/www/html/*
chmod -R 755 /var/www/html/*
2.2 配置wordpress
[root@ip-192-168-3-73 html]# vim wp-config.php
[root@ip-192-168-3-73 html]#
測試,所以不需要Google搜尋
2.3 登陸方式:
http://13.209.82.198/wp-admin/
2.4測試:
寫一個test page
2.5 Bootstrap指令碼
#!/bin/bash
sudo -s
sudo yum update -y
yum install httpd24 -y
chkconfig httpd on
yum -y install php55 php55-bcmath php55-devel php55-common php55-cli php55-pecl-apc php55-pdo php55-mysql php55-xml php55-gd php55-mbstring php-pear php55-mysqlnd php55-mcrypt
sudo yum install -y amazon-efs-utils
sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-469e6527.efs.ap-northeast-2.amazonaws.com:/ /var/www/html
sudo echo "fs-469e6527.efs.ap-northeast-2.amazonaws.com:/ /var/www/html nfs4 nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,_netdev,noresvport 0 0" >> /etc/fstab
cd /var/www/html
echo "<?php phpinfo(); ?>" > phpinfo.php
service httpd start
wget https://wordpress.org/latest.zip
unzip latest.zip
mv wordpress/* /var/www/html/
rm -rf wordpress/ latest.zip
sudo chown -R apache:apache /var/www/html/*
sudo chmod -R 775 /var/www/html
3. 使用CloudFront進行內容分發服務
3.1 建立S3儲存桶
3.2 建立CloudFront,源為S3儲存桶
3.3 安裝Wordpress建立WP Offload S3 Lite
3. 使用CloudFront進行內容分發服務
3.1 建立S3儲存桶
3.2 建立CloudFront,源為S3儲存桶
3.3 安裝Wordpress建立WP Offload S3 Lite
由於是通過角色新增的,所以沒有所謂的Key等 ,故修改配置檔案將之說明即可,第一張是下載和啟用,第二張是設定 ,配置(vim /var/www/html/wp-config.php),第三張是結果
選擇合適的S3
3.4 WP Offload S3外掛作用:
WordPress多媒體檔案自動上傳到S3
URL重寫,將本地多媒體檔案的URL重寫為S3的URL
URL重寫,將本地多媒體檔案的URL重寫為Cloudfront的URL,使用者訪問時,自動將使用者的流量指向CloudFront。自動讀取CDN上的多媒體檔案。
最後達到的結果,就是,所有的靜態檔案放到S3上;所有程式相關的檔案放到EFS上;資料庫是放在另外的RDS上。
4. 使用AutoScaling,Elastic Load Balancer和Route 53
4.1 Elastic Load Balancer,建立Application Load Balancer
4.2 Route 53,建立Route 53並使用Alias記錄解析ELB
4.3 Settings
4. 建立AMI映象,建立啟動配置(Lauch Configuration),建立Auto Scaling組
4.5 驗證
5. 清理工作
Auto Scaling Group
4. 使用AutoScaling,Elastic Load Balancer和Route 53
4.1 Elastic Load Balancer,建立Application Load Balancer
4.2 Route 53,建立Route 53並使用Alias記錄解析ELB
4.3 Settings
4. 建立AMI映象,建立啟動配置(Lauch Configuration),建立Auto Scaling組
4.4.1 public subnet & Target group
注意:建立 Auto Scaling 組,使用擴充套件策略調整此組的容量
4.5 驗證
模擬EC2例項故障、RDS例項故障進行故障轉移測試,檢視應用程式是否能自動進行切換,保證業務不中斷。
當終止一臺EC2時,Auto Scaling會自動在相同的AZ區域新增一臺ec2,在生產環境中,不會稍微的造成一些影響,訪問會稍微有些延遲 。我們可以在Lauch Configuration更改一些閾值。讓健康狀態檢查時間變短。
當重啟RDS時,由於例項部署在多可用區的,所以重啟例項的話,在另一個區域的backup會自動生效。理論上只會影響主資料庫,對備份資料庫不會造成任何影響。
5. 清理工作
清理的內容包括:
Auto Scaling Group
EC2例項
AMI
快照
ELB
Route53
EFS
S3
RDS例項
相關文章
- AWS 認證解決方案架構師 – 助理級 (AWS Certified Solutions Architect – Associate)架構
- Mysql高可用架構方案MySql架構
- AWS架構圖繪製軟體免費下載,怎麼畫AWS架構圖架構
- AWS助理架構師樣題解析架構
- MyCAT高可用方案和架構圖架構
- AWS助理架構師認證考經架構
- 高可用架構設計全面詳解(8大高可用方案)架構
- 高可用架構架構
- 在AWS上的架構部署與設計架構
- Oracle 高可用架構Oracle架構
- 華夏航空全面採用AWS構建雲基礎架構架構
- MySQL 高可用架構之 MMM 架構MySql架構
- AWS Switching to an IAM role (AWS CLI)
- Canal高可用架構部署架構
- 【Redis】Sentinel 高可用架構Redis架構
- Redis Sentinel高可用架構Redis架構
- Oracle高可用架構(MAA)Oracle架構
- MySQL 中常見的幾種高可用架構部署方案MySql架構
- Twitter 高併發高可用架構架構
- 基於AWS的檔案同步服務系統架構架構
- 在亞馬遜AWS上擴充套件微服務架構(英文PPT)亞馬遜套件微服務架構
- AWS - [01]
- MySQL高可用架構對比MySql架構
- mysql高可用架構MHA搭建MySql架構
- Keepalived 架構高可用 Mysql架構MySql
- mysql MHA 高可用架構部署MySql架構
- 基於AWS雲服務的批處理系統架構架構
- k8s高可用架構K8S架構
- MySQL高可用架構設計分析MySql架構
- MQ系列9:高可用架構分析MQ架構
- 深度解析KubeEdge EdgeMesh 高可用架構架構
- 理解HDFS高可用性架構架構
- Redis 高可用架構最佳實踐Redis架構
- 高可用架構之高可用的應用和服務架構
- 經驗分享:我們如何使用AWS構建無伺服器架構 - hypertrack伺服器架構
- AWS學習
- Container on AWSAI
- 在AWS無伺服器架構上實施應用程式介面伺服器架構