apiVersion: v1
kind: Service
metadata:
name: kafka-headless
spec:
clusterIP: None
ports:
- name: broker
port: 9092
protocol: TCP
targetPort: 9092
selector:
app: kafka
sessionAffinity: None
type: ClusterIP
---
apiVersion: v1
kind: Service
metadata:
name: kafka
spec:
ports:
- name: broker
port: 9092
protocol: TCP
targetPort: 9092
selector:
app: kafka
sessionAffinity: None
type: ClusterIP
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
labels:
app: kafka
name: kafka
spec:
podManagementPolicy: OrderedReady
replicas: 1
revisionHistoryLimit: 1
selector:
matchLabels:
app: kafka
serviceName: kafka-headless
template:
metadata:
labels:
app: kafka
spec:
containers:
- command:
- sh
- -exc
- |
unset KAFKA_PORT && \
export KAFKA_BROKER_ID=${HOSTNAME##*-} && \
export KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://${POD_IP}:9092 && \
exec /etc/confluent/docker/run
env:
- name: POD_IP
valueFrom:
fieldRef:
apiVersion: v1
fieldPath: status.podIP
- name: KAFKA_HEAP_OPTS
value: -Xmx1G -Xms1G
- name: KAFKA_ZOOKEEPER_CONNECT
value: leader-zookeeper:2181
- name: KAFKA_LOG_DIRS
value: /opt/kafka/data/logs
- name: KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR
value: "1"
image: confluentinc/cp-kafka:latest
imagePullPolicy: IfNotPresent
livenessProbe:
exec:
command:
- sh
- -ec
- /usr/bin/jps | /bin/grep -q SupportedKafka
failureThreshold: 3
initialDelaySeconds: 30
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 5
name: kafka-broker
readinessProbe:
failureThreshold: 3
initialDelaySeconds: 30
periodSeconds: 10
successThreshold: 1
tcpSocket:
port: kafka
timeoutSeconds: 5
ports:
- containerPort: 9092
name: kafka
protocol: TCP
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
volumeMounts:
- mountPath: /opt/kafka/data
name: datadir
dnsPolicy: ClusterFirst
restartPolicy: Always
schedulerName: default-scheduler
securityContext: {}
terminationGracePeriodSeconds: 60
updateStrategy:
type: OnDelete
volumeClaimTemplates:
- metadata:
name: datadir
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
---
apiVersion: policy/v1beta1
kind: PodDisruptionBudget
metadata:
labels:
app: kafka-pdb
name: kafka-pdb
spec:
maxUnavailable: 0
selector:
matchLabels:
app: kafka
---
要转发到服务,需要在名称前面使用svc/
。因此,您的命令可以是kubectl port-forward svc/kafka 10000:9092
或kubectl port-forward kafka-0 10000:9092
在Windows上,确保Windows防火墙没有阻止Kubectl。
参考:https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/#forward-a-local-port-to-a-port-on-the-pod
参考资料:
https://kubernetes.io/docs/tasks/debug-application-cluster/local-debuging/#development-or-debuging-an-existing-service
https://www.telepresence.io/reference/install
我正在尝试实现一个基于运行时配置的Quarkus扩展,它提供了一个SecurityIdentityUggmentor。 部署: 我的处理器 运行时: 我的录音机: 在客户端应用程序中生成MyAugmentor实例的唯一方法是添加一个bean。扩展的运行时模块中的xml。但是我没有看到豆子。github repo中的其他扩展中的xml。有人能给我指一下正确的方向吗?
主要内容:1.概述,2.doExportUrls,3. Protocol1.概述 Dubbo 服务暴露有两种方式 本地暴露,JVM 本地调用。配置如下: <dubbo:service scope=“local” /> <dubbo:service scope=“remote” /> 在不配置 scope 的情况下,默认两种方式都暴露。 2.doExportUrls 本地暴露服务的顺序图如下: 我们看到 ServiceConfig#export() 方法中,会在配置初始
扩展说明 当有服务暴露时,触发该事件。 扩展接口 org.apache.dubbo.rpc.ExporterListener 扩展配置 <!-- 暴露服务监听 --> <dubbo:service listener="xxx,yyy" /> <!-- 暴露服务缺省监听器 --> <dubbo:provider listener="xxx,yyy" /> 已知扩展 org.apache.dubbo
我已经看过了官方文档和许多关于和配置之间区别的StackOverflow问题。我想我理解基本的,但我真的想理解依赖项暴露或不暴露意味着什么。 这就是我目前所得到的。当我发布我的Java库(用Kotlin编写,但不相关)时,发布的文件中的依赖范围要么是使用时的要么是使用时的。 那么在这种情况下公开依赖项真的只是意味着将它们添加到类路径(编译范围)吗? 关于和的许多答案之一是,它仅仅是关于构建优化,如
27.2 将Bean暴露给JMX MBeanExporter是Spring JMX 框架中的核心类。它负责把Spring bean注册到JMX MBeanServer。例如,下面的例子: package org.springframework.jmx; public class JmxTestBean implements IJmxTestBean { private Stri
PostgreService.yaml 已创建服务的终结点为 然后我在pod(kubectl exec-it mark-dummy-pod bash)内运行ping172.31.6.149,但不工作。(ping localhost正在工作)