溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Serverless框架之Kubeless如何安裝

發(fā)布時(shí)間:2021-11-26 14:49:46 來源:億速云 閱讀:168 作者:小新 欄目:云計(jì)算

這篇文章主要介紹Serverless框架之Kubeless如何安裝,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

1. 創(chuàng)建命名空間,創(chuàng)建kubeless 控制管理容器

  1.  

    >kubectl create ns kubeless  

  2.  

    #自行安裝方便切換空間的kubens  

  3.  

    >kubens kubeless  

  4.  

    #根據(jù)官方提供的yaml ,創(chuàng)建Kubeless Controller Manager容器:  

  5.  

    >kubectl create -f https://github.com/kubeless/kubeless/releases/download/v1.0.7/kubeless-non-rbac-v1.0.7.yaml  

  6.  

    #kubless 空間下,可以查看到如下pod  

  7.  

    >kubectl get pods  

  8.  

    NAME READY STATUS RESTARTS AGE  

  9.  

    kubeless-controller-manager-59d484f4d-5v7nv 3/3 Running 0 26m  

2. 下載,配置kubeless 客戶端

  1.  

    #我這是Mac,所以下載的Mac版本的  

  2.  

    >wget https://github.com/kubeless/kubeless/releases/download/v1.0.7/kubeless_darwin-amd64.zip  

  3.  

    #解壓后  

  4.  

    >cp bundles/kubeless_darwin-amd64/kubeless /usr/local/bin/  

3. 小試牛刀

  1.  

    # 創(chuàng)建hello.py 文件,文件內(nèi)容如下:  

  2.  

    # 打印event事件,然后返回event的data 內(nèi)容  

  3.  

    def hello(event,context):  

  4.  

    print (event)  

  5.  

    return event['data']  

  1.  

    #kubeless 空間下,運(yùn)行一下  

  2.  

    >kubeless function deploy hello --runtime python3.8 --from-file hello.py --handler hello.hello  

  3.  

    #任務(wù)正常執(zhí)行,返回如下:  

  4.  

    INFO[0000] Deploying function...  

  5.  

    INFO[0000] Function hello submitted for deployment  

  6.  

    INFO[0000] Check the deployment status executing 'kubeless function ls hello'  

  7.  

     

  8.  

    #查看下剛跑的function  

  9.  

    >kubeless function ls hello -o wide  

  10.  

    AME NAMESPACE HANDLER RUNTIME TYPE TOPIC DEPENDENCIES STATUS MEMORY ENV LABEL SCHEDULE  

  11.  

    hello kubeless hello.hello python3.8 1/1 READY created-by : kubeless  

  12.  

    function : hello  

觸發(fā)驗(yàn)證一下:

a. 通過kubeless 命令行驗(yàn)證:

  1.  

    >kubeless function call hello --data '{"hello":"world"}'  

  2.  

    #返回  

  3.  

    {"hello": "world"}  

b. 使用Kubeless UI來調(diào)用

    i. 先安裝下kubeless UI:(https://github.com/kubeless/kubeless-ui)

  1.  

    #這里默認(rèn)空間為kubeless  

  2.  

    >kubectl create -f https://raw.githubusercontent.com/kubeless/kubeless-ui/master/k8s.yaml  

  3.  

    #可以查看下狀態(tài),如下Running已經(jīng)安裝了  

  4.  

    >kubectl get pods  

  5.  

    NAME READY STATUS RESTARTS AGE  

  6.  

    hello-684545b7c6-sf6sz 1/1 Running 0 16m  

  7.  

    kubeless-controller-manager-59d484f4d-5v7nv 3/3 Running 0 59m  

  8.  

    ui-698c9989-tlw2b 2/2 Running 0 80s  

  9.  

     

  10.  

    #看下服務(wù),可以看到服務(wù)的虛擬IP  

  11.  

    >kubectl get svc  

  12.  

    NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE  

  13.  

    hello ClusterIP 10.105.236.229 <none> 8080/TCP 17m  

  14.  

    ui NodePort 10.111.144.93 <none> 3000:31997/TCP 2m33s  

Serverless框架之Kubeless如何安裝

c. 使用kubectl proxy 來調(diào)用

  1.  

    #開啟代理  

  2.  

    >kubectl proxy --port=9999  

  3.  

    #返回  

  4.  

    Starting to serve on 127.0.0.1:9999  

  5.  

    #訪問看下  

  6.  

    > curl -L --data '{"hello": "world again"}' --header "Content-Type:application/json" http://localhost:9999/api/v1/namespaces/kubeless/services/hello:8080/proxy/  

  7.  

    #返回  

  8.  

    {"hello": "world again"}  

以上是“Serverless框架之Kubeless如何安裝”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI