Serverless框架之Kubeless如何安装
这篇文章主要介绍Serverless框架之Kubeless如何安装,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
1. 创建命名空间,创建kubeless 控制管理容器
-
>kubectl create ns kubeless
-
#自行安装方便切换空间的kubens
-
>kubens kubeless
-
#根据官方提供的yaml ,创建Kubeless Controller Manager容器:
-
>kubectl create -f https://github.com/kubeless/kubeless/releases/download/v1.0.7/kubeless-non-rbac-v1.0.7.yaml
-
#kubless 空间下,可以查看到如下pod
-
>kubectl get pods
-
NAME READY STATUS RESTARTS AGE
-
kubeless-controller-manager-59d484f4d-5v7nv 3/3 Running 0 26m
2. 下载,配置kubeless 客户端
-
#我这是Mac,所以下载的Mac版本的
-
>wget https://github.com/kubeless/kubeless/releases/download/v1.0.7/kubeless_darwin-amd64.zip
-
#解压后
-
>cp bundles/kubeless_darwin-amd64/kubeless /usr/local/bin/
3. 小试牛刀
-
# 创建hello.py 文件,文件内容如下:
-
# 打印event事件,然后返回event的data 内容
-
def hello(event,context):
-
print (event)
-
return event['data']
-
#kubeless 空间下,运行一下
-
>kubeless function deploy hello --runtime python3.8 --from-file hello.py --handler hello.hello
-
#任务正常执行,返回如下:
-
INFO[0000] Deploying function...
-
INFO[0000] Function hello submitted for deployment
-
INFO[0000] Check the deployment status executing 'kubeless function ls hello'
-
-
#查看下刚跑的function
-
>kubeless function ls hello -o wide
-
AME NAMESPACE HANDLER RUNTIME TYPE TOPIC DEPENDENCIES STATUS MEMORY ENV LABEL SCHEDULE
-
hello kubeless hello.hello python3.8 1/1 READY created-by : kubeless
-
function : hello
触发验证一下:
a. 通过kubeless 命令行验证:
-
>kubeless function call hello --data '{"hello":"world"}'
-
#返回
-
{"hello": "world"}
b. 使用Kubeless UI来调用
i. 先安装下kubeless UI:(https://github.com/kubeless/kubeless-ui)
-
#这里默认空间为kubeless
-
>kubectl create -f https://raw.githubusercontent.com/kubeless/kubeless-ui/master/k8s.yaml
-
#可以查看下状态,如下Running已经安装了
-
>kubectl get pods
-
NAME READY STATUS RESTARTS AGE
-
hello-684545b7c6-sf6sz 1/1 Running 0 16m
-
kubeless-controller-manager-59d484f4d-5v7nv 3/3 Running 0 59m
-
ui-698c9989-tlw2b 2/2 Running 0 80s
-
-
#看下服务,可以看到服务的虚拟IP
-
>kubectl get svc
-
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
-
hello ClusterIP 10.105.236.229 <none> 8080/TCP 17m
-
ui NodePort 10.111.144.93 <none> 3000:31997/TCP 2m33s
c. 使用kubectl proxy 来调用
-
#开启代理
-
>kubectl proxy --port=9999
-
#返回
-
Starting to serve on 127.0.0.1:9999
-
#访问看下
-
> curl -L --data '{"hello": "world again"}' --header "Content-Type:application/json" http://localhost:9999/api/v1/namespaces/kubeless/services/hello:8080/proxy/
-
#返回
-
{"hello": "world again"}
以上是“Serverless框架之Kubeless如何安装”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注蜗牛博客行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
评论