成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

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

eternalshallow / 3002人閱讀

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

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

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

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

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

該場(chǎng)景的示例命令如下:

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

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

場(chǎng)景二:集中化管理/清理資源,不易遺漏

用戶(hù)經(jīng)常購(gòu)買(mǎi)多種產(chǎn)品,每種的數(shù)量不一,部分應(yīng)臨時(shí)需求而創(chuàng)建的資源,結(jié)束使用后常忘記及時(shí)刪除,因?yàn)榉植剂闵⒉灰坠芾?,不知不覺(jué)中花了不少錢(qián)。如X.D. GLOBAL等用戶(hù),則善于利用CLI快速創(chuàng)建并及時(shí)清理不用的資源。

示例命令如下:

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

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

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

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

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

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

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

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

場(chǎng)景四:頻繁批量切換EIP

某資訊行業(yè)用戶(hù)由于業(yè)務(wù)場(chǎng)景需要,會(huì)頻繁觸發(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

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

UCloud CLI的便捷之處

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

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

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

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

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

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

2.命令編寫(xiě)更簡(jiǎn)單高效

UCloud CLI批量操作資源時(shí)原生支持并發(fā)、UI多線(xiàn)程渲染等,相比開(kāi)啟多進(jìn)程執(zhí)行命令行,占用系統(tǒng)資源更少,而且命令編寫(xiě)更加簡(jiǎn)單,降低運(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更加簡(jiǎn)單,可以有效減少運(yùn)維人員的代碼操作。

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

3.穩(wěn)定可靠

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

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

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

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

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

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

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

?

2.執(zhí)行以下命令,以u(píng)hub.service.ucloud.cn/ucloudcli/ucloud-cli:0.1.20為鏡像啟動(dòng)一個(gè)容器,容器名字為ucloud-cli:

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

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

$ docker exec -it ucloud-cli bash

總結(jié)

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

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

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/110072.html

相關(guān)文章

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

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

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

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

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

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

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

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

    ernest.wang 評(píng)論0 收藏0
  • IaC 自動(dòng)化配置與編排神器 - Terraform 深度解析

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

    Tecode 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<