kind: List
apiVersion: v1
items:
- apiVersion: v1
kind: Service
metadata:
name: sfs-svc
labels:
app: sfs-app
spec:
ports:
- port: 80
name: web
clusterIP: None
selector:
app: sfs-app
- apiVersion: apps/v1
kind: StatefulSet
metadata:
name: web
spec:
selector:
matchLabels:
app: sfs-app # has to match .spec.template.metadata.labels
serviceName: "sfs-svc"
replicas: 3
template:
metadata:
labels:
app: sfs-app # has to match .spec.selector.matchLabels
spec:
terminationGracePeriodSeconds: 10
containers:
- name: test-container
image: nginx
imagePullPolicy: IfNotPresent
command: [ "sh", "-c"]
args:
- while true; do
printenv MY_NODE_NAME MY_POD_NAME MY_POD_NAMESPACE >> /var/sl/output.txt;
printenv MY_POD_IP >> /var/sl/output.txt;
date >> var/sl/output.txt;
cat /var/sl/output.txt;
sleep 999999;
done;
env:
- name: MY_NODE_NAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
- name: MY_POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: MY_POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
- name: MY_POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
volumeMounts:
- name: www
mountPath: /var/sl
volumeClaimTemplates:
- metadata:
name: www
spec:
accessModes: [ "ReadWriteOnce" ]
#storageClassName: classNameIfAny
resources:
requests:
storage: 1Mi
$kubectl版本
客户端版本:Version.info{Major:“1”,Minor:“13”,GitVersion:“V1.13.3”,GitCommit:“721BFA751924DA8D1680787490C54B9179B1FED0”,GitTreEstate:“Clean”,BuildDate:“2019-02-01T20:08:12Z”,GoVersion:“Go1.11.5”,编译器:“GC”,平台:“Linux/AMD64”}服务器版本:Version.info{Major:“1”,Minor:“14”,GitVersion:“V1.14.1”,GitCommit:“B7394102D6EF778017F2CA4046ABBAA23 B88C290”,GitTreeState:“Clean”,BuildDate:“2019-04-08T17:02:58Z”,GoVersion:“Go1.12.1”,编译器:“GC”,平台:“Linux/AMD64”}
$kubectl获取po、svc、statefulset
> NAME READY STATUS RESTARTS AGE
> pod/web-0 1/1 Running 0 45m
> pod/web-1 1/1 Running 0 45m
> pod/web-2 1/1 Running 0 45m
>
> NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
> service/kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 46m
> service/sfs-svc ClusterIP None <none> 80/TCP 45m
>
> NAME READY AGE
> statefulset.apps/web 3/3 45m
>
当我尝试$nslookup sfs-svc.default.svc.cluster.local时
> Server: 127.0.0.53
> Address: 127.0.0.53#53
>
**> ** server can't find sfs-svc.default.svc.cluster.local: SERVFAIL**
>
我的第一个猜测是,您正在从localhost
而不是从pod
内部运行nslookup
。
我尝试了yaml,只能在从localhost运行nslookup sfs-svc.default.svc.cluster.local
时重新生成此问题。
无论如何,要检查服务的DNS条目,请从POD内部运行nslookup
。这里有一个例子,
~ $ kubectl run -it --rm --restart=Never dnsutils2 --image=tutum/dnsutils --command -- bash
root@dnsutils2:/# nslookup sfs-svc.default.svc.cluster.local
Server: 10.96.0.10
Address: 10.96.0.10#53
Name: sfs-svc.default.svc.cluster.local
Address: 172.17.0.6
Name: sfs-svc.default.svc.cluster.local
Address: 172.17.0.5
Name: sfs-svc.default.svc.cluster.local
Address: 172.17.0.4
root@dnsutils2:/# exit
用库伯涅茨-Kafka作为迷你库伯的起点。 这使用StatefulSet和headless服务在集群内进行服务发现。 我们的目标是对外展示各个Kafka经纪人,其内部地址为: 限制是这个外部服务能够专门针对经纪人。 做这件事的正确(或一种可能)方法是什么?是否可以通过< code > Kafka-x . broker . Kafka . SVC . cluster . local:9092 公开外
它显示无头服务是在豆荚顶部创建的。我没有办法强制连接到第一个吊舱或吊舱0或第二个吊舱,即吊舱1。
问题内容: 我正在使用JAX-WS,但是在检索消耗Web服务的客户端信息时遇到问题。我已经找到了如何使用JAX-RPC和Apache Tomcat Axis(而不是JAX-WS)来做到这一点。有人对此有想法吗? 问题答案: 那这个呢:
问题内容: 您经常会看到Node的示例hello world代码,该代码创建Http Server,开始侦听端口,然后执行以下操作: 但理想情况下,您希望这样做: 如何在调用前不将服务器号存储在变量中的情况下检索服务器当前正在侦听的端口? 我之前已经看过这件事,但是在Node文档中找不到。也许这是表达的特定内容? 问题答案: Express 4.x答案: Express 4.x(根据下面的Tien
X2.2.0新增 sp_get_user_avatar_url($avatar) 功能: 获取用户头像地址 参数: $avatar: 数据库中保存的用户头像文件路径 返回: 类型string,用户头像地址 使用: $url = sp_get_user_avatar_url('avatart/2231rweqrqwer.png'); echo $url;//输出用户头像地址
问题内容: 这是要求 我想得到这个。 我试过了 它记录。我如何获得价值,为什么会有价值? 问题答案: “ [userId:null]”通常是DOM元素的“ toString”打印输出。如果您执行类似操作,则很有可能 您将看到它是somesort的DOM元素子类。因此,类似: 可能会打印文本节点。