- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以我在 Google Cloud 上设置了一个完整的堆栈,我有几个组件需要相互通信,所以我想出了以下流程:
入口 -> Apache 服务 -> Apache 部署(2 个实例) -> 应用服务 -> 应用部署(2 个实例)
因此 Ingress 在我的 2 个 Apache 实例之间很好地划分了请求,但是 Apache 部署并没有在我的 2 个应用程序部署之间很好地划分它。
服务(Apache 和 App)在这两种情况下都是 NodePort 服务。
我想要实现的是服务(Apache 和应用程序)在它们的链接部署中对它们收到的请求进行负载平衡,但我不知道 NodePort 服务是否可以做到这一点,所以我想知道如何实现这个。
应用服务 yaml 如下所示:
apiVersion: v1
kind: Service
metadata:
name: preprocessor-service
labels:
app: preprocessor
spec:
type: NodePort
selector:
app: preprocessor
ports:
- port: 80
targetPort: 8081
最佳答案
如果您正在通过 clusterIP 并使用默认代理模式 iptables ,然后 NodePort
服务将执行随机方法(Kubernetes 1.1 或更高版本),这称为 iptables proxy mode .对于早期的 Kubernetes 1.0,默认值为 userspace proxy mode循环法。如果你想控制这种行为,你可以使用 ipvs proxy mode .
当我说 clusterIP 时,我指的是只有集群才能理解的 IP 地址,如下所示:
$ kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
http-svc NodePort 10.109.87.179 <none> 80:30723/TCP 5d
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 69d
当您指定 NodePort
时,它还应该是跨所有集群节点的网格。换句话说,集群中的所有节点都将在该特定端口上监听它们的外部 IP,但是,如果应用程序或 pod 恰好在该特定节点上运行,您将收到来自应用程序或 pod 的响应。因此,您可以潜在地设置一个外部负载均衡器,使其后端指向特定的 NodePort
并且流量将根据端口上的健康检查进行转发。
我不确定您的情况,是否有可能您没有使用 clusterIP
?
关于kubernetes - NodePort 是否请求部署之间的平衡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52542260/
我想要一个 NodePort 服务的节点端口(比如 30034)的 tcpdump 指向 Kubernetes 集群中的一个 pod。此节点端口服务映射到路径下的入口资源内。当我使用入口内配置的主机访
我正在尝试使用 NodePort与 kind但不知何故它不想工作。 我已经成功部署了以下集群: apiVersion: kind.x-k8s.io/v1alpha4 kind: Cluster nod
所以我在 Google Cloud 上设置了一个完整的堆栈,我有几个组件需要相互通信,所以我想出了以下流程: 入口 -> Apache 服务 -> Apache 部署(2 个实例) -> 应用服务 -
我正在尝试运行 3 节点 Kubernetes 集群。我已经启动并充分运行集群,以便在不同节点上运行服务。不幸的是,我似乎无法让基于 NodePort 的服务正常工作(正如我所理解的正确性......
我正在关注这个示例,以便使用 Kubernetes 创建一个 Docker 注册表: https://robertbrem.github.io/Microservices_with_Kubernete
我在 virtualbox 环境中有一个包含 3 个节点的集群。我用标志创建了集群 kubeadm init --pod-network-cidr=10.244.0.0/16 然后我安装了法兰绒并将其
我有一个由 3 个虚拟机组成的集群,我在上面安装了 kubernetes 并部署了一些我希望可以从外部访问的 pod 和服务(例如我的本地电脑) 我遵循了本教程 https://kubernetes.
我的情况是,目前,我正在将我的应用程序作为 Daemon 集运行,并希望将 Datadog 集成到我的基础架构中。 据我了解,守护进程集的目的是确保每个集的一个 pod 在每个节点上运行。 在这里,我
按照 kubernetes.io 上的交互式教程进行操作其中 NodePort类型服务是通过 kubectl expose deploy kubernetes-bootcamp --type="Nod
我正在使用 AWS EKS 运行 Kubernetes。我正在为 nodeport 服务执行一些负载测试,并在访问 pod 未运行的节点时看到 ~16k-20k 的并发连接限制。我想知道是否有某种方法
我是 kubernetes 的新手,我想了解当我们让 NodePort 向外界公开端口时,kubernetes 网络是如何工作的。 假设我们的 kubernetes 集群中有两个节点,分别称为 Nod
有没有办法在 kubernetes 服务 YAML 定义中指定自定义 NodePort 端口?我需要能够在我的配置文件中明确定义端口。 最佳答案 您可以设置类型NodePort在您的Service部署
我正试着用Kind来使用NodePort,但不知何故它不想工作。。我已经成功部署了以下集群:。然后是一个非常简单的部署:。和一项服务:。并且我可以通过例如。但我无法通过公开的NodePort连接到该服
我尝试打开 nodePort 80/443,但失败了,因为它超出了默认的 nodePort 范围。 解决方案是将 - --service-node-port-range 选项添加到静态 pod kub
如何更改 Kubernetes NodePort 服务超时? 我已经通过使用 apache2 网络服务器运行无限循环 php 代码对其进行了测试,但 3 分钟后它以 nginx 的 504 网关超时结
apiVersion: v1 kind: Service metadata: name: nginx labels: name: nginx spec: ports: #
我有以下服务配置: kind: Service apiVersion: v1 metadata: name: web-srv spec: type: NodePort selector:
我刚刚开始使用 Kubernetes,我对 NodePort 和 LoadBalancer 类型的服务之间的区别感到困惑。 我理解的区别是 LoadBalancer 不支持 UDP,但除此之外,每当我
部署新的工作负载时,Rancher 2在“端口”部分提供了4个选项: NodePort HostPort 群集IP 第4层负载均衡器 有什么区别?尤其是在NodePort,HostPort和群集IP之
我有一个正在运行的 pod,它是使用以下 pod-definition.yaml 创建的: apiVersion: v1 kind: Pod metadata: name: microserv
我是一名优秀的程序员,十分优秀!