热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

knativeservingv1.0.0安装

knative-serving安装Knative-serving-v1.0.0安装1.前提条件2.文件来源说明3.运行yaml文件3.1可能遇到的问题4.查看pod是否创建完成5.

knative-serving安装

  • Knative-serving-v1.0.0安装
    • 1. 前提条件
    • 2. 文件来源说明
    • 3. 运行yaml文件
      • 3.1 可能遇到的问题
    • 4. 查看pod是否创建完成
    • 5.配置为knative网络默认使用Kourier
    • 6.设置所属域
      • 6.1 配置无负载均衡的所属域
      • 6.2 配置带有负载均衡的所属域
    • 7.验证
    • 8. 具体使用方式
    • 9. 参考
    • 其他意外状况


Knative-serving-v1.0.0安装

编写时间:2021-12-05
修改时间:2021-12-08 添加了k8s版本、执行yaml文件可能出现的问题、负载均衡下dns配置、删除检测环境
修改时间:2021-12-18 修改访问helloworld的命令的解释
友情链接:knative简介


1. 前提条件


knative与kubernetes的对应关系参考:knative计划
kubernetes 建议 v1.21之上

kubernetes环境要求:

  • 如果是单节点集群,建议至少需要6个CPU、6G内存、30G磁盘
  • 如果是多节点集群,建议每个节点至少需要2个CPU、4G内存、20G磁盘
  • 需要有kubectl命令行工具
  • 需要有docker命令行工具

2. 文件来源说明


文件需要自行获取


  • yaml文件:gitee地址
  • docker镜像:docker hub 地址

3. 运行yaml文件


1: serving-crds.yaml和serving-core.yaml是安装knative-serving的yaml文件
2: kourier.yaml是安装knative网络层的yaml文件

kubectl apply -f serving-crds.yaml
kubectl apply -f serving-core.yaml
kubectl apply -f kourier.yaml

3.1 可能遇到的问题

apiVersion版本不对,请修改yaml文件的内容,之后再次执行

# 问题详情
Warning: policy/v1beta1 PodDisruptionBudget is deprecated in v1.21+, unavailable in v1.25+; use policy/v1 PodDisruptionBudget# 问题原因:policy/v1beta1在k8sv1.21+以上版本已改为policy/v1# 修改文件,之后重新执行
sed -i "s/policy\/v1beta1/policy\/v1/g" XXX.yaml

4. 查看pod是否创建完成

kubectl get pod -n knative-serving
kubectl get pod -n kourier-system

5.配置为knative网络默认使用Kourier

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

6.设置所属域


6.1 配置无负载均衡的所属域

kubectl patch configmap/config-domain \-n knative-serving \--type merge \-p '{"data":{"127.0.0.1.nip.io":""}}'# 配置此项需要将service的类型改为NodePort,使用以下命令
kubectl patch service/kourier \
-n kourier-system \
--type merge \
-p '{"spec":{"type":"NodePort"}}'

6.2 配置带有负载均衡的所属域


使用sslip.io作为默认 DNS 后缀

kubectl apply -f serving-default-domain.yamlkubectl patch configmap/config-domain \-n knative-serving \--type merge \-p '{"data":{"sslip.io":""}}'

7.验证


  1. 创建serving-test的命名空间

kubectl create namespace serving-test

  1. 运行helloworld-go.yaml文件

kubectl apply -f helloworld-go.yaml

  1. 等待pod创建

kubectl get pod -n serving-test

  1. 获取请求头

kubectl get route -n serving-test

  1. 访问helloworld

1: :是kubectl get route -n serving-test获取的url,去掉urlhttp://
2: 是knative-serving的网络服务ip和端口,kourier网络可以通过kubectl get service kourier -n kourier-system获取,端口是内部端口
3: 1-2分钟如果没有请求访问,pod会自动扩缩容到0
4: 响应值为Hello World!,表示成功

curl -H "Host: " http://<serving_network_ip>:<serving_network_port>

  1. 删除检测环境

kubectl delete namespaces serving-test

8. 具体使用方式

knative-serving的使用

9. 参考

Knative官网

其他意外状况

如果其他意外情况&#xff0c;还请告知&#xff0c;谢谢


推荐阅读
  • 本文整理了Java中fr.adrienbrault.idea.symfony2plugin.util.yaml.YamlPsiElementFactory.createDummyFi ... [详细]
  • k8snamespace配置cpu最大和最小限额
    世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程。问:如何为namespace配置最大和最小限额&#x ... [详细]
  • http:my.oschina.netleejun2005blog136820刚看到群里又有同学在说HTTP协议下的Get请求参数长度是有大小限制的,最大不能超过XX ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • 本文讨论了在openwrt-17.01版本中,mt7628设备上初始化启动时eth0的mac地址总是随机生成的问题。每次随机生成的eth0的mac地址都会写到/sys/class/net/eth0/address目录下,而openwrt-17.01原版的SDK会根据随机生成的eth0的mac地址再生成eth0.1、eth0.2等,生成后的mac地址会保存在/etc/config/network下。 ... [详细]
  • 本文详细介绍了如何使用MySQL来显示SQL语句的执行时间,并通过MySQL Query Profiler获取CPU和内存使用量以及系统锁和表锁的时间。同时介绍了效能分析的三种方法:瓶颈分析、工作负载分析和基于比率的分析。 ... [详细]
  • 预备知识可参考我整理的博客Windows编程之线程:https:www.cnblogs.comZhuSenlinp16662075.htmlWindows编程之线程同步:https ... [详细]
  • 本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ... [详细]
  • 本文介绍了一个适用于PHP应用快速接入TRX和TRC20数字资产的开发包,该开发包支持使用自有Tron区块链节点的应用场景,也支持基于Tron官方公共API服务的轻量级部署场景。提供的功能包括生成地址、验证地址、查询余额、交易转账、查询最新区块和查询交易信息等。详细信息可参考tron-php的Github地址:https://github.com/Fenguoz/tron-php。 ... [详细]
  • 本文介绍了如何在Azure应用服务实例上获取.NetCore 3.0+的支持。作者分享了自己在将代码升级为使用.NET Core 3.0时遇到的问题,并提供了解决方法。文章还介绍了在部署过程中使用Kudu构建的方法,并指出了可能出现的错误。此外,还介绍了开发者应用服务计划和免费产品应用服务计划在不同地区的运行情况。最后,文章指出了当前的.NET SDK不支持目标为.NET Core 3.0的问题,并提供了解决方案。 ... [详细]
  • 安装oracle软件1创建用户组、用户和目录bjdb节点下:[rootnode1]#groupadd-g200oinstall[rootnode1]#groupad ... [详细]
  • Kubernetes(k8s)基础简介
    Kubernetes(k8s)基础简介目录一、Kubernetes概述(一)、Kubernetes是什么(二& ... [详细]
  • 《Spring Boot开发:从0到1》大纲结构
    《SpringBoot开发:从0到1》大纲结构v2.0第一部分SpringBoot基础第1章SpringBoot史前简述1.1J2EE(Java2Pla ... [详细]
  • 今天在node节点发现不能查看pod了输入命令错误如下[rootnode01~]#kubectlgetpodTheconnectiontotheserverlocalhost:8 ... [详细]
author-avatar
我2你1生1世你知到_164
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有