第一章 九析带你轻松完爆 Knative 安装

网友投稿 344 2022-10-27

第一章 九析带你轻松完爆 Knative 安装

系列文章:总目录索引:九析带你轻松完爆 Knative 系列教程

目录

1 前言

2 邀约

3 Knative 简介

4 组件安装

4.1 安装服务组件(Serving)

4.1.1 安装 Custom Resource Definitions(CRDs)

4.1.2 安装服务核心组件

4.1.3 安装网络层

4.1.4 配置服务默认使用 Kourier

5 部署 hello world 应用

5.1 编写 hello world 应用

5.2 部署 hello world 应用

5.3 访问 hello world 应用

1 前言

如果你对博客有任何疑问,请告诉我。

2 邀约

你可以从 b 站搜索 “九析”,获取免费的、更生动的视频资料:

3 Knative 简介

本文档将带您完成最新版的 Knative 安装。

Knative 有两个主要组件 —— 服务(Serving )和事件(Eventing):

服务(Serving)组件(版本 0.9):为基于无状态请求的从零扩展服务提供了一种抽象事件(Eventing)组件(版本 0.16):为启用事件源(例如 Github Webhooks,kafka)和事件使用者(例如 k8s)绑定提供了一种抽象

Knative 还有一个 Observability 插件(目前该插件已过期,版本 0.14)。该插件作用是提供标准工具去查看运行在 knative 上的服务健康情况。

上面概念模糊的同学不用太追究,后续会逐步介绍。目前先有个概念即可。

4 组件安装

4.1 安装服务组件(Serving)

4.1.1 安装 Custom Resource Definitions(CRDs)

kubectl apply -f 安装服务核心组件

kubectl apply -f 安装网络层

Knative 新版本已经不再强依赖 Istio,所以这里我们使用 Knative 社区自己开发的网络层 Kourier。

kubectl apply -f Kourier 服务的类型为 NodePort,指令如下:

kubectl patch svc -n kourier-system kourier -p '{"spec": {"type": "NodePort"}}'

4.1.4 配置服务默认使用 Kourier

默认 Serving 配置位于 config-network 的 configmap 中,执行如下命令将 ingress.class 从 Istio 替换为 kourier。

kubectl patch configmap/config-network \--namespace knative-serving \--type merge \--patch '{"data":{"ingress.class":"kourier.ingress.networking.knative.dev"}}'

5 部署 hello world 应用

在部署 hello world 应用之前,首先确保 Knative 和 Kourier 都运行成功,如下图所示:

5.1 编写 hello world 应用

编写 Knative service 的 helloworld.yaml 文件:

---apiVersion: v1kind: Namespacemetadata:  name: helloworld---apiVersion: serving.knative.dev/v1alpha1kind: Servicemetadata:  name: hello  namespace: helloworldspec:  template:    metadata:      labels:        app: hello    annotations:      autoscaling.knative.dev/target: "10"    spec:       containers:         - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/simple-app:132e07c14c49       env:       - name: TARGET          value: "World!"

5.2 部署 hello world 应用

执行如下语句部署 Knative service 应用:

kubectl apply -f helloworld.yaml

执行完,使用如下命令查看 Knative service 应用部署结果:

kubectl get ksvc -n helloworld

命令执行结果如下图所示:

5.3 访问 hello world 应用

使用 curl 客户端工具访问部署的 Knative service 服务,命令如下:

curl -H "Host: hello.helloworld.example.com" curl 命令执行成功结果如下图所示:

自此,九析带你轻松完爆 Knative 安装。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:基于CC2531的USB接口设计
下一篇:usB接口的主要特点
相关文章

 发表评论

暂时没有评论,来抢沙发吧~