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
8080/TCP 17m ui NodePort 10.111.144.93
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如何安装"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!