亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

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

eternalshallow / 3090人閱讀

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

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

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

場景一:大批量創(chuàng)建和刪除主機(jī)

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

該場景的示例命令如下:

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

(圖:控制臺頁面主機(jī)創(chuàng)建一次性最多10臺并發(fā))

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

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

示例命令如下:

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

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

場景三:全球動態(tài)加速PathX實(shí)例大量端口管理

海外游戲發(fā)行商為了提高玩家體驗,經(jīng)常使用UCloud全球動態(tài)加速服務(wù)PathX實(shí)現(xiàn)各地區(qū)玩家就近接入,有效規(guī)避跨國網(wǎng)絡(luò)擁塞導(dǎo)致的響應(yīng)慢、丟包等問題。

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

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

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

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

場景四:頻繁批量切換EIP

某資訊行業(yè)用戶由于業(yè)務(wù)場景需要,會頻繁觸發(fā)其服務(wù)切換外網(wǎng)IP。投入研發(fā)人力以腳本實(shí)現(xiàn)該需求,已是行業(yè)內(nèi)非常通用的做法。而使用UCloud CLI能以輕量的方式完成目標(biāo)。

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

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

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

UCloud CLI的便捷之處

1.多維度支持命令補(bǔ)全功能

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

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

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

(圖:命令參數(shù)值靜態(tài)補(bǔ)全)

(圖:命令參數(shù)動態(tài)補(bǔ)全)

2.命令編寫更簡單高效

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

#命令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更加簡單,可以有效減少運(yùn)維人員的代碼操作。

(圖:并發(fā)創(chuàng)建主機(jī)時,UI多線程渲染)

3.穩(wěn)定可靠

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

4.豐富的產(chǎn)品支持

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

(圖:CLI支持產(chǎn)品)

在Docker中運(yùn)行UCloud CLI

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

1.首先安裝Docker,拉取我們?yōu)槟銣?zhǔn)備好的鏡像:uhub.service.ucloud.cn/ucloudcli/ucloud-cli:0.1.20

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

此鏡像的構(gòu)建腳本如下:

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 #配置自動補(bǔ)全

?

2.執(zhí)行以下命令,以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.執(zhí)行如下命令連接到容器ucloud-cli,連接成功后即可開始使用ucloud-cli,建議先執(zhí)行ucloud init命令初始化配置。

$ docker exec -it ucloud-cli bash

總結(jié)

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

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

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/110072.html

相關(guān)文章

  • 主機(jī) UHost】操作指南:[鏡像]自定義鏡像、使用Packer創(chuàng)建自定義鏡像并導(dǎo)入本地鏡像

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

    Tecode 評論0 收藏0
  • 使用Packer實(shí)現(xiàn)自動化構(gòu)建UCloud主機(jī)鏡像

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

    zorpan 評論0 收藏0
  • 主機(jī) UHost】操作指南:常用操作導(dǎo)航,主機(jī)創(chuàng)建、管理、升配、刪除、開關(guān)機(jī)及網(wǎng)絡(luò)配置等

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

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

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

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

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

    Tecode 評論0 收藏0

發(fā)表評論

0條評論

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