国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

巧用命令行工具UCloud CLI,輕量操作API管理云資源

eternalshallow / 3003人閱讀

摘要:宋體截止目前,已提供等不同語言的。為進一步降低用戶的運維人力投入,又推出了基于的命令行工具,提供輕量化的命令行調用方式并在開源。而控制臺一次最多允許創建臺云主機,因此需要用戶進行傻瓜式操作次。

截止目前,UCloud已提供Python/Java/Golang等不同語言的API SDK。為進一步降低用戶的運維人力投入,又推出了基于Golang SDK的命令行工具CLI(Command Line Interface),提供輕量化的API命令行調用方式,并在GitHub開源(https://github.com/ucloud/ucloud-cli)。CLI的命令行交互方式更符合研發運維的操作習慣,并且一些典型使用場景通過CLI也更容易代碼化的沉淀和維護。

下面是一些用戶遇到的實際場景, 用CLI都能更好地解決,在此總結并給出使用示例。

場景一:大批量創建和刪除主機

PingCAP作為一家專業的分布式數據庫供應商,使用UCloud時需要一次性批量創建300臺云主機,進行分布式業務測試。而UCloud控制臺一次最多允許創建10臺云主機,因此需要用戶進行傻瓜式操作30次。但是,主機API實際可以支持最多1000臺并發創建。對于一次性API操作,花時間用SDK編寫創建腳本的投入產出比很低。此類場景PingCAP便是通過CLI解決。

該場景的示例命令如下:

$ ucloud uhost create —cpu 1 —memory-gb 2 —image-id uimage-xxx —password test123 —count 300

(圖:控制臺頁面主機創建一次性最多10臺并發)

場景二:集中化管理/清理資源,不易遺漏

用戶經常購買多種產品,每種的數量不一,部分應臨時需求而創建的資源,結束使用后常忘記及時刪除,因為分布零散不易管理,不知不覺中花了不少錢。如X.D. GLOBAL等用戶,則善于利用CLI快速創建并及時清理不用的資源。

示例命令如下:

$ ucloud uhost delete --uhost-id `ucloud uhost list --uhost-id-only --page-off`

(圖:控制臺零散的產品資源)

場景三:全球動態加速PathX實例大量端口管理

海外游戲發行商為了提高玩家體驗,經常使用UCloud全球動態加速服務PathX實現各地區玩家就近接入,有效規避跨國網絡擁塞導致的響應慢、丟包等問題。

某游戲公司也使用了PathX,但其單條線路需要管理的端口數量超過60個。方法一,產品首先得在控制臺非標支持60個端口管理,然后用戶在頁面對所有端口逐一添加配置。方法二是架構師編寫腳本,用戶通過參數更新調整端口。不過,伴隨產品迭代、API調整,腳本的升級成為一個問題,強依賴雙方配合。

(圖:控制臺PathX支持9個端口協議管理)

CLI通過沉淀這樣的場景,直接支持了PathX 多端口管理,示例代碼如下:# 給PathX指定的線路實例資源添加80個TCP端口

$ ucloud pathx uga add-port --uga-id uga-kjkxxx --protocol tcp --port 3000-3079,8080

場景四:頻繁批量切換EIP

某資訊行業用戶由于業務場景需要,會頻繁觸發其服務切換外網IP。投入研發人力以腳本實現該需求,已是行業內非常通用的做法。而使用UCloud CLI能以輕量的方式完成目標。

示例代碼如下:# 創建eip并綁定,然后解綁釋放之前已綁定的eip

$ ucloud ext uhost switch-eip --create-eip-bandwidth-mb 2 --uhost-id xxx --unband-all --release-all

(圖:控制臺先解綁再綁定新EIP)

UCloud CLI的便捷之處

1.多維度支持命令補全功能

在命令補全方面,通常每次發布新版本都需要終端用戶再次生成補全腳本,功能局限并且使用成本較高。因此,UCloud CLI擴展了spf13/cobra框架的功能(相關代碼已開源https://github.com/lixiaojun629/cobra),把命令補全功能集成到命令行工具內部,用戶只需要一次配置,日后版本升級都不必再重新生成補全腳本,使用方便。

補全功能包括:支持命令補全、命令參數補全、命令參數值靜態補全以及命令參數值動態補全等。針對命令參數值動態補全,為了減少調用API次數、避免卡頓,UCloud CLI還添加了動態補全本地緩存特性。

命令參數值靜態補全以及命令參數值動態補全的代碼示例見下圖所示,其中參數line的可選值BGP和International是固定在代碼里的靜態枚舉值,參數eip-id的可選值是由Tab鍵觸發的API請求得到的。

(圖:命令參數值靜態補全)

(圖:命令參數動態補全)

2.命令編寫更簡單高效

UCloud CLI批量操作資源時原生支持并發、UI多線程渲染等,相比開啟多進程執行命令行,占用系統資源更少,而且命令編寫更加簡單,降低運維代碼成本。例如批量刪除主機命令:

#命令1

$ ucloud uhost list --uhost-id-only | xargs -P 32 -I {} ucloud uhost delete --yes --uhost-id {}

#命令2

$ ucloud uhost delete --uhost-id `ucloud uhost list --uhost-id-only --page-off`

很明顯命令2更加簡單,可以有效減少運維人員的代碼操作。

(圖:并發創建主機時,UI多線程渲染)

3.穩定可靠

由于UCloud CLI使用了spf13/cobra命令行開發框架,它也是Docker、Kubernetes和etcd等著名開源項目的CLI使用框架,久經考驗,穩定可靠。

4.豐富的產品支持

在產品支持方面,目前UCloud CLI已經支持主機、網絡、存儲和數據庫等常用云產品服務,基本能夠滿足用戶大部分使用場景下的日常操作需求,支持產品列表見下圖所示:

(圖:CLI支持產品)

在Docker中運行UCloud CLI

在Docker中也可以快速地使用UCloud CLI,按下面的操作步驟示例,就可以體驗了。

1.首先安裝Docker,拉取我們為你準備好的鏡像:uhub.service.ucloud.cn/ucloudcli/ucloud-cli:0.1.20

$ docker pull uhub.service.ucloud.cn/ucloudcli/ucloud-cli:0.1.20

此鏡像的構建腳本如下:

FROM ubuntu:18.04RUN apt-get update && apt-get install wget -yRUN wget https://github.com/ucloud/ucloud-cli/releases/download/0.1.20/ucloud-cli-linux-0.1.20-amd64.tgzRUN tar -zxf ucloud-cli-linux-0.1.20-amd64.tgz -C /usr/local/bin/RUN echo "complete -C $(which ucloud) ucloud" >> ~/.bashrc #配置自動補全

?

2.執行以下命令,以uhub.service.ucloud.cn/ucloudcli/ucloud-cli:0.1.20為鏡像啟動一個容器,容器名字為ucloud-cli:

$ docker run --name ucloud-cli -it -d uhub.service.ucloud.cn/ucloudcli/ucloud-cli:0.1.20

3.執行如下命令連接到容器ucloud-cli,連接成功后即可開始使用ucloud-cli,建議先執行ucloud init命令初始化配置。

$ docker exec -it ucloud-cli bash

總結

UCloud CLI的一個重要意義在于能夠將API、事務等有機組合,場景化支持用戶的需求,把耗費人力的資源管理以標準化形式呈現,給用戶提供便捷靈活的產品解決方案。未來,UCloud CLI也將在更多的使用場景下幫助運維者擺脫操作難題,歡迎大家點擊閱讀原文鏈接下載試用并提出反饋意見。(安裝使用指南:https://docs.ucloud.cn/software/cli/intro)。

活動推薦:8月17日在上海原境界美術館,【UCan下午茶—云原生Kubernetes的開發和運維】技術沙龍將邀請六位資深技術專家進行深入的技術探討和實踐案例分享。歡迎掃描下方二維碼報名參加!

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/110072.html

相關文章

  • 主機 UHost】操作指南:[鏡像]自定義鏡像、使用Packer創建自定義鏡像并導入本地鏡像

    摘要:云主機自定義鏡像制作鏡像選中要制作鏡像的主機,然后點擊制作鏡像按鈕。鏡像的適用機型限制傳承自改自定義鏡像的母鏡像。如下圖所示,通過在中集成等工具,制作包含各類軟件的不可變鏡像,供多云平臺的云主機等使用。云主機UHost自定義鏡像制作鏡像選中要制作鏡像的主機,然后點擊制作鏡像按鈕。填寫鏡像名稱和描述,點擊確定即可創建鏡像。輸入鏡像名稱和描述之后,點擊確定按鈕,即可生成該主機的鏡像,此時頁面即跳...

    Tecode 評論0 收藏0
  • 使用Packer實現自動化構建UCloud主機鏡像

    摘要:宋體為了解決此類問題,開發了相關代碼,并被自動化構建鏡像工具的官方倉庫所采納。宋體宋體可以運行在常用的主流操作系統上,它不是等軟件的替代品,而是集成并使用這些自動化配置工具在鏡像上預裝軟件等。背景 云主機是用戶使用最高頻的云產品之一。隨著云主機數量的增多,如何在云主機中保證版本化部署的一致性,成為用戶常見的難題。在現有情況下,用戶首先需要手動或使用腳本連接主機,然后再進行部署安裝,操作...

    zorpan 評論0 收藏0
  • 主機 UHost】操作指南:常用操作導航,主機創建、管理、升配、刪除、開關機及網絡配置等

    摘要:更多詳情參見云主機快速上手指南主機管理創建完成后,可對您的云主機進行關閉重啟斷電刪除等常規操作,且均支持多臺批量處理。在詳情頁面中,可對云主機設置分組,組名相同的云主機即被歸為同一組。重置主機密碼如果您遺失了云主機管理密碼,可點擊重置密碼。UHost常用操作導航云主機相關操作創建主機擴容磁盤網絡相關操作彈性IP: EIP管理防火墻: 外網防火墻管理虛擬IP:KeepAlived配置私有網絡:...

    Tecode 評論0 收藏0
  • 命令(CloudShell)-什么是命令

    摘要:產品概述云命令行是版的命令行工具,目的是為了方便用戶管理云服務。不同賬戶的虛擬機相互隔離,保障安全。預裝命令工具鏈產品即開即用,無須配置賬戶信息。編程語言常用命令等使用限制每個賬戶同時能打開的會話不超過個。產品概述云命令行(CloudShell)是Web版的命令行工具,目的是為了方便用戶管理UCloud云服務。 打開CloudShell產品頁面,后臺會自動分配一臺虛擬機供您免費使用,虛擬機內...

    ernest.wang 評論0 收藏0
  • IaC 自動化配置與編排神器 - Terraform 深度解析

    摘要:而對于依賴關系的抽象,業界最通行的做法即使用有向無環圖,來描述事務間的依賴關系。圖表并行遍歷,執行資源動作從根節點開始,并行地去編排整個資源拓撲,遍歷整個有向無環圖,直到所有資源都被成功編排,并執行清理操作。前言Terraform 是 Hashicorp 公司開源的一種多云資源編排工具。使用者通過一種特定的配置語言(HCL Hashicorp Configuration Language)來...

    Tecode 評論0 收藏0

發表評論

0條評論

eternalshallow

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<