apiVersion: apps/v1 #指定API版本标签 kind: Deployment #定义资源的类型/角色,deployment为控制器,service,endpoints metadata: #定义资源的元数据信息 name: kafka-deployment #定义资源的名称,在同一个namespace空间中必须是唯一的 namespace: lk #默认default labels: #定义资源标签 app: kafka-d spec: replicas: 1 #定义副本数量 selector: #定义选择器 matchLabels: #匹配上边的标签 app: yamlkafka-d #名称 template: #定义模板 metadata: labels: app: yamlkafka-d spec: containers: #定义容器信息 - name: yamlkafka #容器名,与标签名要相同 image: repository.anxinyun.cn/base-images/kafka-alpine:2.11-1.21-04-19 #容器使用的镜像以及版本 imagePullPolicy: IfNotPresent #获取镜像的策略 Alawys表示下载镜像 IfNotPresent 表示优先使用本地镜像,否则下载镜像,Never表示仅使用本地镜像 ports: - containerPort: 9092 #定义容器的端口 name: tcp-kafka - containerPort: 2181 #定义容器的端口 name: tcp-zookeeper # hostNetwork: true # dnsPolicy: ClusterFirstWithHostNet --- apiVersion: v1 #指定API版本标签 kind: Service #定义资源的类型/角色,Deployment为控制器,Service,endpoints metadata: #定义资源的元数据信息 name: kafka-service #定义资源的名称,在同一个namespace空间中必须是唯一的 namespace: lk #默认default labels: #定义资源标签 app: kafka-s spec: selector: app: yamlkafka-d #deployment标签 type: NodePort #ClusterIP ports: - protocol: TCP port: 9092 # 集群内访问 targetPort: 9092 #集群内 容器内端口 name: tcp-9092 nodePort: 30992 #集群外访问 范围30000-32767 - protocol: TCP port: 2181 # 集群内访问 targetPort: 2181 #集群内 容器内端口 name: tcp-2181 nodePort: 30181 #集群外访问 范围30000-32767