namespace:ingress-nginxspec:type:NodePortports:-name:httpport:80protocol:TCPtargetPort:http+nodePort:31234-name:httpsport:443protocol:TCPtargetPort:https+nodePort:31235+image:registry.cn-hangzhou.aliyuncs.com/bin_x/nginx-ingress:v0.34.1@sha256:80359bdf124d49264fabf136d2aecadac729b54f16618162194356d3c...
执行nslookup命令 查询grpc.mygrpc.com这个域名 (两次执行nslookup命令之间稍微等待以下,可以刷新下缓存) 执行ping 命令也可以看到域名对应的ip 动态切换了 到此 已经实现了DNS域名的负载均衡 测试grpc DNS负载均衡客户端程序 实验前已经在192.168.0.210 192.168.0.211上启动了my-grpc-demo-server项目(此项目是一个grpc...
通过阿里云容器服务K8S Ingress Controller实现应用服务的灰度发布一文详细阐述了如何通过Ingress Controller来实现应用的灰度发布,当然我们也支持gRPC服务的灰度发布。 注意:由于nginx grpc_pass的限制,目前对于gRPC服务暂不支持service-weight配置 1、部署新版本gRPC服务: apiVersion: extensions/v1beta1 kind: Deployment me...
backend 则是 k8s 的 service 服务, serviceName 是服务名称, servicePort 是服务端口。backend 可以用来给 ingress 设置默认访问的 Service 服务。当请求不匹配 rules 中任何一条规则时,则会去走 backend 中的配置。 apiVersion: extensions/v1beta1 kind: Ingress metadata: name: nginx-ingress annotations: ngin...
2. grpc+protobuf+网关实战 3. etcd技术介绍 4. 基于etcd的服务发现与注册 5. 基于etcd的分布式锁实战 2. 微服务架构中篇 1. k8s架构介绍 2. 基于k8s的容器化部署 3. 基于k8s的Deployment工作负载 4. 基于k8s的ingress实战 5. 基于ingress和service实现灰度发布 ...
如要支持gRPC协议,配置的yaml文件如下: apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: grpc-ingress annotations: kubernetes.io/ingress.class: "nginx" nginx.ingress.kubernetes.io/backend-protocol: "GRPC" spec: rules: - host: yifan-online.com ...
解决服务间东西南北全流量代理,以及k8s下gRPC负载失衡的问题,并通过云原生网关进行流量治理。 方案一:Envoy代理南北流量 + ETCD东西流量服务发现 Envoy取代urlrouter中Nginx的功能,各业务服务的请求会先路由到Envoy中,当私网部分服务upstream启动异常时不会影响网关自身的可用性,实现南北流量的代理,后续可继续在基于Envoy的...
这就像是工程师选择 Ingress 控制器时的基本“参数”。常规的 HTTP(S) 代理能够满足软件要求吗?还是需要通过 gRPC、HTTP/2.0?或是需要 TCP(带有 SNI)、UDP?如果你的情况不是特别常规,建议仔细考虑这些问题,防止以后需要重新配置集群。每个控制器都有自己的一组受支持的协议。
kubectl apply -f grpc-ingress.yml ingress"grpc-ingress"created 4、测试gRPC服务访问: 4.1、查看gRPC服务端提供的所有服务: grpcurl -insecure grpc.example.com:443 list grpc.reflection.v1alpha.ServerReflection helloworld.Greeter 这里我们可以看到服务端提供了helloworld.Greeter服务 ...
apiVersion:networking.k8s.io/v1kind:Ingressmetadata:name:grpc-ingressannotations:kubernetes.io/ingress.class:"nginx"nginx.ingress.kubernetes.io/backend-protocol:"GRPC"spec:rules:-host:yifan-online.comhttp:paths:-path:/grpcbackend:serviceName:grpc-serviceservicePort:9000 ...