Serverless框架之Kubeless如何安装

19次阅读
没有评论

这篇文章主要介绍 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
 

Serverless 框架之 Kubeless 如何安装

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