文档说明:自建K8S,只记录关键地方;
k8s 版本 > 1.24.7
CRI 使用 containerd
实验环境: linux debian 11
目标:serverless 使用实践
Knative Istio controller
因为安装ingress-istio 时,istio相关配置已经完成,因此这一步配置并不多
https://github.com/knative/net-istio/releases/download/knative-v1.8.0/net-istio.yaml
| |
| |
| apiVersion: networking.istio.io/v1alpha3 |
| kind: Gateway |
| metadata: |
| name: knative-ingress-gateway |
| namespace: knative-serving |
| labels: |
| app.kubernetes.io/component: net-istio |
| app.kubernetes.io/name: knative-serving |
| app.kubernetes.io/version: "1.8.0" |
| networking.knative.dev/ingress-provider: istio |
| spec: |
| selector: |
| istio: ingressgateway |
| servers: |
| - hosts: |
| - '*.xiaoshuogeng.com' |
| port: |
| name: http |
| number: 80 |
| protocol: HTTP |
| tls: |
| httpsRedirect: true |
| - hosts: |
| - '*.xiaoshuogeng.com' |
| port: |
| name: https |
| number: 443 |
| protocol: HTTPS |
| tls: |
| credentialName: com-xiaoshuogeng-tls-cert-secret |
| mode: SIMPLE |
| |
| |
| |
设置TLS域名证书
| |
| |
| set +exu |
| kubectl -n istio-system delete secret com-xiaoshuogeng-tls-cert-secret |
| set -exu |
| |
| kubectl create -n istio-system secret tls com-xiaoshuogeng-tls-cert-secret \ |
| --key=/data/tls/wildcard.xiaoshuogeng.com.key.pem \ |
| --cert=/data/tls/wildcard.xiaoshuogeng.com.fullchain.pem |
| |
| |
| |
| kubectl --namespace istio-system get service istio-ingressgateway |
| |
| |
| kubectl patch configmap/config-domain \ |
| --namespace knative-serving \ |
| --type merge \ |
| --patch '{"data":{"knative.xiaoshuogeng.com":""}}' |
| |
查看pod 运行情况
| |
| kubectl get pods -n knative-serving |
| |
| |
| |
| kubectl get pods -n knative-serving |
| kubectl get pod -n kn |
| kubectl get ksvc -n kn |
| kubectl get pods --namespace istio-system |
| |
| |
| kubectl get svc -n istio-system |
| |
| kubectl get namespace knative-serving -o 'go-template={{index .metadata.labels "serving.knative.dev/release"}}' |
| |
| |
参考文档
- Serverless简介
- knative-serving
- Installing Knative
- Installing Knative Serving using YAML files
- ingress-istio配置服务
- 使用acme.sh自助签发Let's Encrypt 的SSL证书
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术