knative serving 域名映射
创建应用
hello-world.yaml
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: helloworld-go
  namespace: knative-demo
spec:
  template:
    spec:
      containers:
        - image: ghcr.dockerproxy.com/knative/helloworld-go:latest
          env:
            - name: TARGET
              value: "Go Sample v1"创建资源
# kubectl apply -f hello-word.yamlservice.serving.knative.dev/hello created查看资源
# kubectl get svc,rt,vs -n knative-demoNAME                                  TYPE           CLUSTER-IP       EXTERNAL-IP                                        PORT(S)                                              AGE
service/helloworld-go                 ExternalName   <none>           knative-local-gateway.istio-system.svc.wgs.local   80/TCP                                               116s
service/helloworld-go-00001           ClusterIP      10.100.191.179   <none>                                             80/TCP,443/TCP                                       119s
service/helloworld-go-00001-private   ClusterIP      10.100.86.43     <none>                                             80/TCP,443/TCP,9090/TCP,9091/TCP,8022/TCP,8012/TCP   119s
NAME                                      URL                                               READY   REASON
route.serving.knative.dev/helloworld-go   http://helloworld-go.knative-demo.svc.wgs.local   True    
NAME                                                       GATEWAYS                                    HOSTS                                                                                                        AGE
virtualservice.networking.istio.io/helloworld-go-ingress   ["knative-serving/knative-local-gateway"]   ["helloworld-go.knative-demo","helloworld-go.knative-demo.svc","helloworld-go.knative-demo.svc.wgs.local"]   116s
virtualservice.networking.istio.io/helloworld-go-mesh      ["mesh"]                                    ["helloworld-go.knative-demo","helloworld-go.knative-demo.svc","helloworld-go.knative-demo.svc.wgs.local"]   116sClusterDomainClaim
要创建 DomainMapping,您必须首先拥有 ClusterDomainClaim。此 ClusterDomainClaim 将域名委托给要在其中创建 DomainMapping 的名称空间,这使得该名称空间中的 DomainMapping 能够使用该域名。手动创建 ClusterDomainClaim
cdc.yaml
apiVersion: networking.internal.knative.dev/v1alpha1
kind: ClusterDomainClaim
metadata:
  name: helloworld.wgs.com
spec:
  namespace: knative-demo创建 cdc 资源
# kubectl apply -f cdc.yamlclusterdomainclaim.networking.internal.knative.dev/helloworld.wgs.com created查看 cdc 资源
# kubectl get cdc -n knative-demoNAME                 AGE
helloworld.wgs.com   70s自动创建 ClusterDomainClaims
# kubectl patch configmap config-network -n knative-serving -p '{"data":{"autocreate-cluster-domain-claims":"true"}}'configmap/config-network patchedDomainMapping
dm.yaml
apiVersion: serving.knative.dev/v1beta1
kind: DomainMapping
metadata:
  name: helloworld.wgs.com
  namespace: knative-demo
spec:
  ref:
    name: helloworld-go
    kind: Service
    apiVersion: serving.knative.dev/v1
    namespace: knative-demo
---
# 自动创建cdc
apiVersion: serving.knative.dev/v1beta1
kind: DomainMapping
metadata:
  name: helloworld-go.wgs.com
  namespace: knative-demo
spec:
  ref:
    name: helloworld-go
    kind: route
    apiVersion: serving.knative.dev/v1
    namespace: knative-demo创建 dm
# kubectl apply -f dm.yamldomainmapping.serving.knative.dev/helloworld.wgs.com created
domainmapping.serving.knative.dev/helloworld-go.wgs.com created查看 dm
# kubectl get dm -n knative-demoNAME                    URL                            READY   REASON
helloworld-go.wgs.com   http://helloworld-go.wgs.com   True    
helloworld.wgs.com      http://helloworld.wgs.com      True 查看 vs
# kubectl get vs -n knative-demoNAME                            GATEWAYS                                      HOSTS                                                                                                        AGE
helloworld-go-ingress           ["knative-serving/knative-local-gateway"]     ["helloworld-go.knative-demo","helloworld-go.knative-demo.svc","helloworld-go.knative-demo.svc.wgs.local"]   34m
helloworld-go-mesh              ["mesh"]                                      ["helloworld-go.knative-demo","helloworld-go.knative-demo.svc","helloworld-go.knative-demo.svc.wgs.local"]   34m
helloworld-go.wgs.com-ingress   ["knative-serving/knative-ingress-gateway"]   ["helloworld-go.wgs.com"]                                                                                    90s
helloworld.wgs.com-ingress      ["knative-serving/knative-ingress-gateway"]   ["helloworld.wgs.com"]                                                                                       90s访问测试
# curl -H "Host: helloworld.wgs.com" http://192.168.174.249Hello Go Sample v1!# curl -H "Host: helloworld-go.wgs.com" http://192.168.174.249Hello Go Sample v1!参考文档
https://knative.dev/docs/serving/services/custom-domains/

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号