CloudFoundry命令行和Kubernetes命令行中RestfulAPI消費(fèi)方式是怎么樣的

這篇文章主要為大家展示了“CloudFoundry命令行和Kubernetes命令行中Restful API消費(fèi)方式是怎么樣的”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“CloudFoundry命令行和Kubernetes命令行中Restful API消費(fèi)方式是怎么樣的”這篇文章吧。

創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站建設(shè)、網(wǎng)站制作與策劃設(shè)計(jì),西工網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:西工等地區(qū)。西工做網(wǎng)站價(jià)格咨詢:18982081108

先說CloudFoundry的命令行工具CLI。我們?cè)贑loudFoundry環(huán)境下工作,第一個(gè)使用的命令就是cf login。

如果在環(huán)境變量里維護(hù)CF_TRACE的值為true:

CloudFoundry命令行和Kubernetes命令行中Restful API消費(fèi)方式是怎么樣的

則我們能發(fā)現(xiàn),諸如cf login這種命令,實(shí)際上也是通過消費(fèi)Restful API來完成的。

CloudFoundry命令行和Kubernetes命令行中Restful API消費(fèi)方式是怎么樣的

下圖是cf login這個(gè)命令的api endpoint請(qǐng)求細(xì)節(jié),供大家參考:

API endpoint:  https://api.cf.eu10.hana.ondemand.com

REQUEST: [2018-09-21T14:50:57+08:00]

GET /v2/info HTTP/1.1

Host: api.cf.eu10.hana.ondemand.com

Accept: application/json

Content-Type: application/json

User-Agent: go-cli 6.36.1+e3799ad7e.2018-04-04 / windows

RESPONSE: [2018-09-21T14:50:59+08:00]

HTTP/1.1 200 OK

Connection: close

Content-Length: 550

Content-Type: application/json;charset=utf-8

Date: Fri, 21 Sep 2018 06:50:58 GMT

Server: nginx

X-Content-Type-Options: nosniff

X-Vcap-Request-Id: abf32f52-294a-41f5-5919-be948d78f0dd::a32b17bb-da82-4d45-930f-f0344c8a83b3

{"name":"","build":"","support":"","version":0,"description":"Cloud Foundry at SAP Cloud Platform","authorization_endpoint":" https://login.cf.eu10.hana.ondemand.com ","token_endpoint":"[PRIVATE DATA HIDDEN]","min_cli_version":null,"min_recommended_cli_version":null,"api_version":"2.115.0","app_ssh_endpoint":" ssh.cf.eu10.hana.ondemand.com:2222 ","app_ssh_host_key_fingerprint":"f3:12:47:b5:3a:19:6e:6c:4e:9d:90:2e:6f:8e:87:cc","app_ssh_oauth_client":"ssh-proxy","doppler_logging_endpoint":" wss://doppler.cf.eu10.hana.ondemand.com:443 "}

REQUEST: [2018-09-21T14:50:59+08:00]

GET /login HTTP/1.1

Host: login.cf.eu10.hana.ondemand.com

Accept: application/json

Content-Type: application/json

User-Agent: go-cli 6.36.1+e3799ad7e.2018-04-04 / windows

API響應(yīng)結(jié)果:

RESPONSE: [2018-09-21T14:51:00+08:00]

HTTP/1.1 200 OK

Connection: close

Content-Length: 551

Cache-Control: no-store

Content-Language: en-US

Content-Type: application/json;charset=UTF-8

Date: Fri, 21 Sep 2018 06:50:59 GMT

Set-Cookie: X-Uaa-Csrf=8uoxBvyG8QCwo29efrrZNh; Max-Age=86400; Expires=Sat, 22-Sep-2018 06:51:00 GMT; Path=/; Secure; HttpOnly

Strict-Transport-Security: max-age=31536000 ; includeSubDomains

X-Content-Type-Options: nosniff

X-Frame-Options: DENY

X-Vcap-Request-Id: f6b29d8f-f78e-4c5e-61f3-5c9d906828ed

X-Xss-Protection: 1; mode=block

{"app":{"version":"4.19.0"},"links":{"uaa":" https://uaa.cf.eu10.hana.ondemand.com ","passwd":" https://accounts.sap.com/ui/createForgottenPasswordMail?spName=cf.eu10.hana.ondemand.com ","login":" https://login.cf.eu10.hana.ondemand.com ","register":" https://accounts.sap.com/ui/public/showRegisterForm?spName=cf.eu10.hana.ondemand.com "},"zone_name":"uaa","entityID":" login.cf.eu10.hana.ondemand.com ","commit_id":"7897100","idpDefinitions":{},"prompts":{"username":["text","Email"],"password":["password","Password"]},"timestamp":"2018-06-13T12:02:09-0700"}

Email>

再看Kubernetes。我們用的很多的命令:

kubectl get pods,返回pods列表。

CloudFoundry命令行和Kubernetes命令行中Restful API消費(fèi)方式是怎么樣的

CloudFoundry命令行和Kubernetes命令行的Restful API消費(fèi)方式

而用命令行

kubectl --v=8 get pods

則發(fā)現(xiàn),get pods這個(gè)命令實(shí)際上也是發(fā)請(qǐng)求發(fā)往Kubernetes的API server:

https://<ip>:6443/api/v1/namespaces/default/pods?limit=500

API請(qǐng)求明細(xì)如下:

CloudFoundry命令行和Kubernetes命令行中Restful API消費(fèi)方式是怎么樣的

CloudFoundry命令行和Kubernetes命令行中Restful API消費(fèi)方式是怎么樣的

API server是Kubernetes最重要的核心組件之一:

1. 提供集群管理的REST API接口,包括認(rèn)證授權(quán)、數(shù)據(jù)校驗(yàn)以及集群狀態(tài)變更等

2. 提供其他模塊之間的數(shù)據(jù)交互和通信的樞紐(其他模塊通過API Server查詢或修改

數(shù)據(jù),只有API Server才直接操作etcd)

kube-apiserver支持同時(shí)提供https(默認(rèn)監(jiān)聽在6443端口)和http API(默認(rèn)監(jiān)聽在

127.0.0.1的8080端口),其中http API是非安全接口,不做任何認(rèn)證授權(quán)機(jī)制,不建議

生產(chǎn)環(huán)境啟用。兩個(gè)接口提供的REST API格式相同,參考Kubernetes API Reference查

看所有API的調(diào)用格式。

在實(shí)際使用中,通常通過kubectl來訪問apiserver,也可以通過Kubernetes各個(gè)語言的

client庫來訪問apiserver。

比如上面get pods命令對(duì)應(yīng)的API的文檔:

https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.10/#list-62

CloudFoundry命令行和Kubernetes命令行中Restful API消費(fèi)方式是怎么樣的

以上是“CloudFoundry命令行和Kubernetes命令行中Restful API消費(fèi)方式是怎么樣的”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

網(wǎng)站標(biāo)題:CloudFoundry命令行和Kubernetes命令行中RestfulAPI消費(fèi)方式是怎么樣的
本文網(wǎng)址:http://bm7419.com/article26/gighcg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、品牌網(wǎng)站設(shè)計(jì)網(wǎng)站設(shè)計(jì)公司、自適應(yīng)網(wǎng)站、響應(yīng)式網(wǎng)站網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)