当前位置: 首页 > 知识库问答 >
问题:

公开集群IP,以及服务如何在kubernetes服务中工作?

桂志新
2023-03-14

我试图更多地了解服务在Kubernetes中是如何工作的。以这个示例yaml文件为例。

apiVersion: v1
kind: Service
metadata:
  name: schemaregistry #1
  labels:
    name: kafka #2
    app: demo  #3
spec:
  ports:
  - port: 4000 #4
    name: landoopkafkasr #5
    targetPort: 8081 #6
  selector:
    name: landoopkafka #7
    app: demo #8

另外,如果我必须从k8集群中的另一个吊舱B访问吊舱landoopkafka的端口8081,我如何访问它?

太感谢你了。

共有1个答案

连时铭
2023-03-14

您可以从这些中获得有关Kubernetes服务的基本信息

  • 服务-网络
  • 公开-介绍

简单地告诉你

apiVersion: v1
kind: Pod
metadata:
  name: landoopkafka
  labels:
    name: landoopkafka
    app: demo
spec:
  containers:
  - name: kafka
    image: kafka:1.7.9
    ports:
    - containerPort: 8081
apiVersion: v1
kind: Service
metadata:
  name: schemaregistry #1
  labels:
    name: kafka #2
    app: demo  #3
spec:
  ports:
  - port: 4000 #4
    name: landoopkafkasr #5
    targetPort: 8081 #6
  selector:
    name: landoopkafka #7
    app: demo #8
  selector:
    name: landoopkafka #7
    app: demo #8
    null

根据我提供的示例,如果您想访问PodLandoopKafka,可以使用服务DNS作为

schemaregistry:4000

您的服务使用端口4000(#4)公开,这些通信量将被路由到Pod的8081(#6)端口

 类似资料:
  • 什么是port和targetport? 是否为每个代理设置LoadBalancer服务? 这些多个代理是否映射到cloud LB的单个公共IP地址? K8S/Cloud之外的服务如何访问单个代理?通过使用?或者使用?。还有,这里用的是哪个端口?还是? 如何在Kafka Broker的属性中指定此配置?对于k8s集群内部和外部的服务,As端口可能不同。 请帮忙。

  • 我使用几个独立服务运行Kubernetes单节点dev集群--Nginx proxy(端口80)和elasticsearch(端口9200)。有没有办法用ingress公开这些服务,用一个LoadBalancer IP拥有入口点?(X.X.X.X:80和X.X.X:9200) 我读过关于入口限制,它只能用80和443端口访问。但是,也许,存在一些变通方法? 请Thx提供任何建议 但如果以后您想公开

  • 我正在公有云(Azure/AWS/Google cloud)中运行一个Kubernetes集群,我有一些非HTTP服务要为用户公开。 对于HTTP服务,Id通常使用Ingress资源通过可寻址的DNS条目公开地公开该服务。 对于非HTTP、基于TCP的服务(例如,诸如PostgreSQL之类的数据库),我应该如何公开这些服务以供公共使用? 我考虑过使用服务,但这要求节点本身可以公开访问(依赖路由到

  • 我有一个复合服务S.c,它使用两个原子服务S.a和S.b,其中所有三个服务都在Kubernetes集群中运行。更好的模式是什么 1)将Sa、Sb创建为无头服务,并让Sc通过NGINX等外部负载均衡器与它们集成(使用DNS解析器来维护更新的后端pod) 2) 使用clusterIP创建Sa、Sb,并让Sc通过群集DNS(skyDNS加载项)访问/解析它们。这将在内部利用基于IP表的负载平衡来实现PO

  • 我正在aws中运行openshift 我有一个主节点和两个节点。如何向aws公共IP公开服务?我可以在内部访问服务: 我怎么把它暴露给公共IP呢?是否可以在openshfit web控制台中完成?我尝试使用https://docs.openshift.com/container-platform/3.4/dev_guide/expose_service/expose_internal_ip_ser

  • 以前有人试图公开kube-dns服务吗?如果有,有没有其他的安装步骤或者你有什么调试建议给我? 服务定义如下: