首页 > 其他分享 >knative所有服务域名及单域名配置方法

knative所有服务域名及单域名配置方法

时间:2023-10-06 16:32:21浏览次数:33  
标签:default 及单 demoapp 域名 knative com yht

为所有服务配置域名

kubectl edit configmap config-domain -n knative-serving
apiVersion: v1
data:
  yht.com: ""   # 写你要配置的域名 

查看域名

在创建完应用之后会自动创建域名

默认域名格式为: k service名字 + 命名空间 + 二级域名。可修改,下面会给出教程
[root@ip-172-17-11-227 ~]# kn service list
NAME      URL                                    LATEST          AGE   CONDITIONS   READY   REASON
demoapp   http://demoapp.default.yht.com   demoapp-00001   20h   3 OK / 3     True  
[root@ip-172-17-11-227 ~]# kubectl get vs
NAME                          GATEWAYS                                                                              HOSTS                                                                                                           AGE
demoapp-ingress               ["knative-serving/knative-ingress-gateway","knative-serving/knative-local-gateway"]   ["demoapp.default","demoapp.default.yht.com","demoapp.default.svc","demoapp.default.svc.cluster.local"]   20h
demoapp-mesh                  ["mesh"]                                                                              ["demoapp.default","demoapp.default.svc","demoapp.default.svc.cluster.local"]                                   20h
[root@ip-172-17-11-227 ~]# kn route list
NAME      URL                                    READY
demoapp   http://demoapp.default.yht.com   True
[root@ip-172-17-11-227 ~]# kubectl get route 
NAME      URL                                    READY   REASON
demoapp   http://demoapp.default.yht.com   True    

为所有服务配置域名格式

kubectl edit cm config-network -n knative-serving
apiVersion: v1
data:
  _example: # 删除此行注释
    domain-template: '{{.Name}}.{{.Namespace}}.{{.Domain}}'  # 将此行改成domain-template: '{{.Name}}.{{.Domain}}'

创建服务验证

[root@ip-172-17-11-227 ~]# kn service create demoapptest --image=ikubernetes/demoapp:v1.0 
Warning: Kubernetes default value is insecure, Knative may default this to secure in a future release: spec.template.spec.containers[0].securityContext.allowPrivilegeEscalation, spec.template.spec.containers[0].securityContext.capabilities, spec.template.spec.containers[0].securityContext.runAsNonRoot, spec.template.spec.containers[0].securityContext.seccompProfile
Creating service 'demoapptest' in namespace 'default':

  0.062s The Route is still working to reflect the latest desired specification.
  0.080s ...
  0.121s Configuration "demoapptest" is waiting for a Revision to become ready.
  2.405s ...
  2.471s Ingress has not yet been reconciled.
  2.570s Waiting for load balancer to be ready
  2.747s Ready to serve.

Service 'demoapptest' created to latest revision 'demoapptest-00001' is available at URL:
http://demoapptest.yht.com  # 可以看到域名格式已经更新

配置单个域名

配置自动创建 ClusterDomainClaims

kubectl edit cm config-network -n knative-serving
apiVersion: v1
data:
  autocreate-cluster-domain-claims: "true"  # 将false改成true

创建ssl secret

kubectl create secret tls yht-domain-sll --cert=/root/yht.pem --key=path/root/yht.key

yaml创建

apiVersion: serving.knative.dev/v1alpha1
kind: DomainMapping
metadata:
  name: hello.yht.com # 设置服务域名。实际业务中需替换成您自己的服务域名。
  namespace: default # 设置命名空间,与服务所在的命名空间一致。
spec:
  ref:
    name: demoapp # 目标服务名称
    kind: Service
    apiVersion: serving.knative.dev/v1    
  tls:
    secretName: yht-domain-ssl  

命令行创建

kn domain create hello.yht.com --ref demoapp --tls yht-domain-ssl --namespace default

验证DomainMapping状态

[root@ip-172-17-11-227 ~]# kubectl get domainmapping
NAME                  URL                          READY   REASON
hello.yht.com   https://hello.yht.com   True    
[root@ip-172-17-11-227 ~]# 

配置重定向

  • Redirected:通过重定向响应 HTTP 请求,302要求客户端使用 HTTPS。
kubectl edit cm config-network -n knative-serving
apiVersion: v1
data:
  http-protocol: Redirected

发布域名

将域名解析至cname至alfjljaslfjj312978wr-12345678.us-west-2.elb.amazonaws.com

测试访问: curl https://hello.yht.com

[root@ip-172-17-11-227 ~]# kubectl get svc -n istio-system
NAME                    TYPE           CLUSTER-IP      EXTERNAL-IP                                                              PORT(S)                                      AGE
istio-ingressgateway    LoadBalancer   10.100.187.5    alfjljaslfjj312978wr-12345678.us-west-2.elb.amazonaws.com   15021:31018/TCP,80:32413/TCP,443:32187/TCP   22h
istiod                  ClusterIP      10.100.122.84   <none>                                                                   15010/TCP,15012/TCP,443/TCP,15014/TCP        22h
knative-local-gateway   ClusterIP      10.100.184.87   <none>                                                                   80/TCP                                       22h

标签:default,及单,demoapp,域名,knative,com,yht
From: https://blog.51cto.com/yht1990/7725869

相关文章

  • 【Azure 容器应用】在中国区Azure上创建的容器服务默认应用域名不全
    问题描述在中国区Azure上,创建ContainerApp服务,发现默认的应用程序URL只有前半段,并不是一个完整的域名。这是什么情况呢?正常的ContainerApp的URL格式为:<containerappname>.<environment>.<region>.azurecontainerapps.cn。如:mymoreappinone04.icysand-c9bc5d4e.chinanorth3.......
  • Serverless平台knative第三章部署
    社区版部署环境准备 事先准备Kubernetes集群用于部署knative 选定isitio用来路由和治理流量需要部署的Knative组件 Serving Eventing Kn(KnativeCLI)环境要求 单节点的Kubernetes集群,需要至少有6个CPU核心,6G内存和30G磁盘空间 多节点的Kubernetes集群,每个......
  • Serverless平台knative第四章资源创建
    应用创建  创建和使用KnativeService资源方式有两种:    knservice<sub_command>      资源配置文件      群组:serving.knative.dev/v1       template <Object>用于创建或更新configuation,任何更新,都将创建新的Revision......
  • Python:Dnspython工具包查询域名的DNS解析记录
    Dnspython是一个基于Python的DNS工具包相关资料https://www.dnspython.org/https://github.com/rthalley/dnspythonhttps://pypi.org/project/dnspython/https://dnspython.readthedocs.io/安装pipinstalldnspython代码示例查询www.baidu.com的A记录importdns.resolverif__n......
  • 测试域名跨域请求
    域名请求测试 curl-I-H"Origin:www.yht.com"-v"https://www.yht.com/app/work-share/js/libpag.wasm"该命令是使用curl工具发送HTTP请求的示例。它使用了以下参数:-H"Origin:www.yht.com":设置HTTP头部中的Origin字段为www.yht.com。Origin字段通常用于跨域请求的安全验证。......
  • Spring中构造器、init-method、@PostConstruct、afterPropertiesSet孰先孰后,自动注入
     引用:https://www.cnblogs.com/qlqwjy/p/9417034.html首先明白,spring的IOC功能需要是利用反射原理,反射获取类的无参构造方法创建对象,如果一个类没有无参的构造方法spring是不会创建对象的。在这里需要提醒一下,如果我们在class中没有显示的声明构造方法,默认会生成一个无参......
  • 最新域名和子域名信息收集技术
    本文部分节选于《web安全攻防渗透测试实战指南(第二版)》域名信息收集1.WHOIS查询WHOIS是一个标准的互联网协议,可用于收集网络注册信息、注册域名﹑IP地址等信息。简单来说,WHOIS就是一个用于查询域名是否已被注册及注册域名详细信息的数据库(如域名所有人、域名注册商)。在WHOIS查询......
  • 运行 Knative Serving demo 应用
    创建ns#kubectlcreatensknative-demonamespace/knative-democreated创建应用hello-world.yamlapiVersion:serving.knative.dev/v1kind:Servicemetadata:name:helloworld-gonamespace:knative-demospec:template:spec:containers:......
  • Ubuntu通过certbot手动配置Let's Encrypt SSL泛型域名证书
    1.安装Snap使用命令安装snap,以及core组件sudoaptinstallsnapdsudosnapinstallcoresudosnaprefreshcore2.移除旧有的certbotsudoapt-getremovecertbotsudodnfremovecertbotsudoyumremovecertbot3.安装certbotsudosnapinstall--classiccertbot......
  • ​泛域名证书什么意思?泛域名证书有什么用?
    在网络安全领域,SSL证书经常作为传输数据安全保护的重要措施而出现,泛域名证书作为SSL证书中的一个重要类别,很多企业根据业务需求会选择泛域名证书。那么你知道泛域名证书什么意思?泛域名证书有什么用吗?为何企业选择泛域名证书吗?本文将为您详细说明。泛域名证书什么意思?泛域名证书,也叫......