Serverless框架之Kubeless如何安装

这篇文章主要介绍Serverless框架之Kubeless如何安装,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

创新新互联,凭借10余年的成都网站建设、做网站经验,本着真心·诚心服务的企业理念服务于成都中小企业设计网站有上千案例。做网站建设,选创新互联。

1. 创建命名空间,创建kubeless 控制管理容器

  1.  

    >kubectl create ns kubeless  

  2.  

    #自行安装方便切换空间的kubens  

  3.  

    >kubens kubeless  

  4.  

    #根据官方提供的yaml ,创建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.  

    # 创建hello.py 文件,文件内容如下:  

  2.  

    # 打印event事件,然后返回event的data 内容  

  3.  

    def hello(event,context):  

  4.  

    print (event)  

  5.  

    return event['data']  

  1.  

    #kubeless 空间下,运行一下  

  2.  

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

  3.  

    #任务正常执行,返回如下:  

  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  

触发验证一下:

a. 通过kubeless 命令行验证:

  1.  

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

  2.  

    #返回  

  3.  

    {"hello": "world"}  

b. 使用Kubeless UI来调用

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

  1.  

    #这里默认空间为kubeless  

  2.  

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

  3.  

    #可以查看下状态,如下Running已经安装了  

  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.  

    #看下服务,可以看到服务的虚拟IP  

  11.  

    >kubectl get svc  

  12.  

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

  13.  

    hello ClusterIP 10.105.236.229 8080/TCP 17m  

  14.  

    ui NodePort 10.111.144.93 3000:31997/TCP 2m33s  

Serverless框架之Kubeless如何安装

c. 使用kubectl proxy 来调用

  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如何安装”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


分享标题:Serverless框架之Kubeless如何安装
网站链接:http://azwzsj.com/article/ggiges.html