函數工作流自動更新ECS證書
應用場景
本文下表示例信息所示為例,介紹如何通過使用函數工作流自動獲取并更新ECS服務器證書。
Web服務器類型
Nginx
代碼編輯語言
Python 3.9
約束與限制
已開通彈性云服務器(Elastic Cloud Server,ECS),且在ECS中配置了SSL證書。
SSL證書為云證書管理服務中購買且續(xù)費的證書。
步驟一:創(chuàng)建委托
使用函數工作流更新ECS服務器證書需要將SCM FullAccess、IAM ReadOnlyAccess權限授權給函數工作流服務。
1.登錄管理控制臺。
2.單擊頁面左上方的
,選擇“管理與監(jiān)管 > 統一身份認證服務”,進入統一身份認證服務界面。
3.在左側導航欄選擇“委托”,并在委托界面右上角單擊“創(chuàng)建委托”,進入創(chuàng)建委托界面。
4.在創(chuàng)建委托界面,按下表創(chuàng)建云服務委托參數說明所示設置委托信息。
5.單擊“下一步”,進入委托授權界面。
6.選擇并勾選需要授權函數工作流的“SCM FullAccess”、“IAM ReadOnlyAccess”權限。
7.單擊“下一步”,設置權限的作用范圍。
8.單擊“確定”,委托創(chuàng)建成功。
步驟二:使用空白模板創(chuàng)建函數
1.登錄管理控制臺。
2.單擊頁面左上方的
,選擇“計算 > 函數工作流”,進入函數工作流界面。
3.單擊函數工作流界面右上方的“創(chuàng)建函數”,進入創(chuàng)建函數界面。
4.按下表創(chuàng)建空白事件函數參數配置所示信息創(chuàng)建空白函數。
5.單擊“創(chuàng)建函數”,跳轉至函數界面,創(chuàng)建空白函數成功
步驟三:創(chuàng)建定時觸發(fā)器
創(chuàng)建定時觸發(fā)器,在固定時間間隔觸發(fā)函數。
1.在函數界面,選擇“設置 > 觸發(fā)器”,進入觸發(fā)器頁簽。
2.單擊“創(chuàng)建觸發(fā)器”,按下表配置定時觸發(fā)器所示信息創(chuàng)建定時觸發(fā)器。
參數
配置說明
觸發(fā)器類型
選擇“定時觸發(fā)器(TIMER)”
定時器名稱
自定義定時器名稱
觸發(fā)規(guī)則
設置為“固定頻率”,具體頻率請根據您的實際情況配置
是否開啟

附加信息
可選填,自定義需要的信息
3.單擊“確定”,定時觸發(fā)器創(chuàng)建成功。
步驟四:制作并配置函數依賴包
部署證書至ECS的函數代碼需要依賴paramiko依賴包,您需要為函數制作并配置paramiko依賴包。
本節(jié)以Python 3.9為例介紹制作和配置依賴包的方法。其他代碼編輯語言制作依賴包的方法請參見如何制作依賴包。
配置依賴包
5.登錄管理控制臺。
6.單擊頁面左上方的
,選擇“計算 > 函數工作流”,進入函數工作流界面。
7.在左側導航欄選擇“函數 > 依賴包管理”,進入依賴包管理界面。
8.單擊的“創(chuàng)建依賴包”,彈出“創(chuàng)建依賴包”對話框,按下表配置依賴包所示設置依賴包信息。
9.單擊“確定”,完成依賴包創(chuàng)建。
10.在左側導航欄選擇“函數 > 函數列表”,進入函數列表界面。
11.單擊函數名稱,進入函數詳情界面。
12.在代碼頁簽,單擊“代碼依賴包”所在行的“添加依賴包”,彈出“選擇依賴包”對話框。
13.選擇8創(chuàng)建的私有依賴包,單擊“確定”,函數依賴包配置完成。
步驟五:在函數中配置代碼源
在函數中配置代碼源,本節(jié)以在線編輯的方式為例。更多創(chuàng)建代碼源的方式請參見創(chuàng)建程序包。
1.在函數工作流界面左側導航欄選擇“函數 > 函數列表”,進入函數列表界面。
2.單擊函數名稱,進入函數詳情界面。
3.選擇“設置 > 環(huán)境變量”,進入環(huán)境變量頁簽。
4.單擊“添加環(huán)境變量”,添加“endpoint”、“region”兩個環(huán)境變量。
環(huán)境變量1:
鍵:endpoint
值:scm.cn-north-4.myhuaweicloud.com
環(huán)境變量2:
鍵:region
值:cn-north-4
5.單擊“保存”,選擇代碼頁簽。
6.在代碼頁簽,將提供的兩段代碼整合添加到一個代碼源文件。
7.單擊“測試”,測試函數,確認函數能正常執(zhí)行。
測試函數的詳細操作請參見在線調試。
8.代碼源添加并測試完成后,函數會根據定時觸發(fā)器設置的觸發(fā)規(guī)則運行,如有續(xù)費證書簽發(fā)會被自動獲取并更新至ECS。
9.您可以在函數詳情頁選擇“監(jiān)控 > 指標”,進入監(jiān)控指標頁簽,查看函數運行情況。
可以查看到“調用次數”、“運行時間”、“錯誤次數”和“被拒絕次數”等指標。有關監(jiān)控更詳細的說明請參見函數監(jiān)控。
為Python制作依賴包
1.打包環(huán)境中的Python版本要和對應函數的運行時版本相同。如Python 3.9建議使用3.9.0及以上版本,Python2.7建議使用2.7.12及以上版本,Python3.6建議使用3.6.3以上版本。
2.執(zhí)行如下命令,為Python 3.9安裝paramiko依賴包,并指定此依賴包的安裝路徑為本地的/tmp/paramiko下。
3.執(zhí)行如下命令切換到/tmp/paramiko下。
4.進入子目錄直到site-packages路徑下(一般路徑為usr/lib64/python3.9/site-packages/),并執(zhí)行如下命令。
所生成的包即為最終需要的依賴包。
其他應用場景
-
使用FunctionGraph函數對OBS中的圖片進行壓縮
將圖片上傳到特定的OBS桶中
將用戶上傳的每個圖像的尺寸進行壓縮
將處理完后的圖像上傳到另一個指定的OBS桶
將圖片上傳到特定的OBS桶中
將用戶上傳的每個圖像的尺寸進行壓縮
將處理完后的圖像上傳到另一個指定的OBS桶
-
使用FunctionGraph函數為OBS中的圖片打水印
將圖片上傳到特定的OBS桶中
將用戶上傳的每個圖片打水印
將處理完后的圖像上傳到另一個指定的OBS桶
將圖片上傳到特定的OBS桶中
將用戶上傳的每個圖片打水印
將處理完后的圖像上傳到另一個指定的OBS桶中
-
使用FunctionGraph函數對DIS數據進行格式轉換并存儲到CloudTable
本章節(jié)介紹如何使用函數結合數據接入服務(DIS)采集IOT實時數據流,并將采集到的數據進行格式轉換,存儲到表格存儲服務(CloudTable Service)中。
本章節(jié)介紹如何使用函數結合數據接入服務(DIS)采集IOT實時數據流,并將采集到的數據進行格式轉換,存儲到表格存儲服務(CloudTable Service)中。
-
使用FunctionGraph函數識別LTS中的異常業(yè)務日志并存儲到OBS
-
使用FunctionGraph函數和CTS識別非法IP的登錄登出操作
-
使用FunctionGraph部署AI繪畫Stable Diffusion應用
本章節(jié)介紹如何通過FunctionGraph的應用中心,部署AI繪畫Stable-Diffusion應用,并提供多種自定義使用AI繪畫應用的方法。
本章節(jié)介紹如何通過FunctionGraph的應用中心,部署AI繪畫Stable-Diffusion應用,并提供多種自定義使用AI繪畫應用的方法。
函數工作流 FunctionGraph 教程視頻
函數工作流
03:15
函數工作流
02:10
函數工作流
03:10
函數工作流
02:33
函數工作流
02:42
函數工作流
02:18
函數工作流
02:42