本文介紹使用WordPress軟件包快速創建單租版全托管計算巢服務實例的詳細信息。
服務說明
本示例采用ECS+SLB+EIP的高可用架構。規格參數都可以由租戶自行選擇。本示例會自動的構建計算巢服務,創建過程大約持續3分鐘,當服務變成待提交后構建成功。具體的服務構建流程如下。
將WordPress安裝包(提前存放到該github repo中)構建為計算巢文件部署物
創建計算巢服務并關聯文件部署物
部署架構
本部署架構為EIP+SLB+ECS+RDS,安全組開放租戶指定的Wordpress(默認為8080)端口,通過公網EIP進行訪問,架構圖如下。
服務構建計費說明
測試本服務構建無需任何費用,創建服務實例涉及的費用參考服務實例計費說明。
RAM賬號所需權限
本服務需要對ECS、VPC等資源進行訪問和創建操作,若您使用RAM用戶創建服務實例,需要在創建服務實例前,對使用的RAM用戶的賬號添加相應資源的權限。添加RAM權限的詳細操作,請參見為RAM用戶授權。
所需權限如下表所示。
權限策略名稱 | 備注 |
AliyunECSFullAccess | 管理云服務器服務(ECS)的權限 |
AliyunVPCFullAccess | 管理專有網絡(VPC)的權限 |
AliyunROSFullAccess | 管理資源編排服務(ROS)的權限 |
AliyunSLBFullAccess | 管理負載均衡服務(SLB)的權限 |
AliyunCloudMonitorFullAccess | 管理云監控(CloudMonitor)的權限 |
AliyunComputeNestUserFullAccess | 管理計算巢服務(ComputeNest)的用戶側權限 |
AliyunComputeNestSupplierFullAccess | 管理計算巢服務(ComputeNest)的服務商側權限 |
服務實例計費說明
測試本服務在計算巢上的費用主要涉及:
所選vCPU與內存規格
系統盤類型及容量
負載均衡規格
公網帶寬
私網連接費用
計費方式包括:
按量付費(小時)
包年包月
部署流程
部署參數說明
參數組 | 參數項 | 示例 | 說明 |
服務實例名稱 | 服務實例名稱 | test | 設置服務實例的名稱。 |
資源組和地域 | 資源組 | 默認資源組 | 創建的服務實例位于的資源組。 |
地域 | 華東1(杭州) | 選中服務實例的地域,建議就近選中,以獲取更好的網絡延時。 | |
付費類型配置 | 付費類型 | 按量付費 | 選擇服務實例的付費類型。可選值:按量付費或包年包月。 |
ECS實例配置 | 實例類型 | ecs.gn6i-c4g1.xlarge | 實例規格,可以根據實際需求選擇。 |
系統盤空間 | 40 | 系統盤大小,可以根據實際需求選擇。 | |
流量付費類型 | PayByTraffic | 流量付費類型,可以根據實際需求選擇。 | |
流量公網帶寬 | 10 | 流量公網帶寬,可以根據實際需求選擇。 | |
實例密碼 | ******* | 設置實例密碼。長度8~30個字符,必須包含三項(大寫字母、小寫字母、數字、()`!@#$%^&*-+={}[]:;'<>,.?/中的特殊符號)。 | |
負載均衡配置 | 負載均衡實例規格 | slb.s2.small | 負載均衡實例規格,可以根據實際需求選擇。 |
數據庫配置 | 實例系列 | 高可用版 | RDS實例系列,可以根據實際需求選擇。 |
實例規格 | mysql.n2.medium.1 | RDS實例規格,可以根據實際需求選擇。 | |
實例存儲 | 50 | RDS實例大小可以根據實際需求選擇。 | |
數據庫名 | wordpress | WordPress數據庫名。 | |
數據庫賬號 | wpuser | WordPress數據庫賬號。 | |
數據庫密碼 | ******** | 設置實例密碼。長度830個字符,必須包含三項(大寫字母、小寫字母、數字、()`!@#$%^&*-+={}[]:;'<>,.?/中的特殊符號)。 | |
WordPress配置 | WordPress監聽端口號 | 8080 | 設置WordPress網站監聽端口號。 |
可用區配置 | 部署區域 | 可用區I | 選擇部署地域下的不同可用區域。 |
選擇已有基礎資源配置 | VPC ID | vpc-xxx | 選擇專有網絡的ID。 |
交換機ID | vsw-xxx | 選擇交換機ID。若找不到交換機,可嘗試切換地域和可用區。 |
部署步驟
單擊部署鏈接,進入服務實例部署界面,根據界面提示,填寫參數完成部署。
參數填寫完成后可以看到對應參數,確認參數后點擊立即創建,進入部署階段。
可以看到服務實例處于待部署狀態。
服務商可以點擊部署,開始進入部署階段。
等待部署完成后就可以開始使用服務,打開瀏覽器訪問WordPress主頁,輸入用戶名和密碼即可訪問WordPress網站。
服務詳細說明
本示例提前將WordPress安裝包存放到該Github Repo中,構建服務過程中會將該安裝包發布為計算巢部署物,并在ROS模板寫入安裝指令,ROS模板引擎在執行時便會自動執行安裝了。
# 安裝wordPress
wget '{{ computenest::file::wordpress }}' -O wordpress-6.2-zh_CN.tar.gz
tar -xvf wordpress-6.2-zh_CN.tar.gz
cp wordpress/wp-config-sample.php wordpress/backup-wp-config.php
sed -i 's/database_name_here/${DBName}/' wordpress/wp-config-sample.php
sed -i 's/username_here/${DBUser}/' wordpress/wp-config-sample.php
sed -i 's/password_here/${DBPassword}/' wordpress/wp-config-sample.php
sed -i 's/localhost/${DBConnectString}/' wordpress/wp-config-sample.php
mv wordpress/wp-config-sample.php wordpress/wp-config.php
cp wordpress/backup-wp-config.php wordpress/wp-config-sample.php
cp -a wordpress/* $WebRootPath
rm -rf wordpress*
usermod -d $WebRootPath apache &>/dev/null
chown apache:apache -R $WebRootPath
chmod -R 755 $WebRootPath/wordpress
sed -i "s/$ApacheIndex/$ApacheIndexReplace/" /etc/httpd/conf/httpd.conf
systemctl restart httpd
其中{{ computenest::file::wordpress }}
為占位符,會由計算巢服務替換成文件部署物WordPress的HTTP下載地址。
文件說明
文件路徑 | 說明 |
config.yaml | 構建服務的配置文件,服務構建過程中會使用計算巢命令行工具computenest-cli,computenest-cli會基于該配置文件構建服務。 |
parameters.yaml | 本服務為托管版單租,使用該文件渲染服務商需要配置的網絡參數,包括VpcId,vSwitch等。 |
artifact/wordpress-6.2-zh_CN.tar.gz | wordpress構建過程會將該包發布為計算巢部署物。 |
icons/service_logo.jpg | 構建服務默認的圖標。 |
templates/parameters.yaml | 本服務為托管版單租服務,所以只需要用戶填寫一部分參數,通過該文件指定用戶所填參數。 |
templates/template.yaml | ROS模板文件,ROS模板引擎根據該模板能夠自動創建出所有的資源。 |