diff --git a/appendix/debug-kubernetes-services.html b/appendix/debug-kubernetes-services.html index cc11c9d9a..8d07bb98a 100644 --- a/appendix/debug-kubernetes-services.html +++ b/appendix/debug-kubernetes-services.html @@ -4,7 +4,7 @@
-参考文档以及一些实用的资源链接。
使用glusterfs做持久化存储文档中我们构建了PV和PVC,当时给glusterfs-nginx
的PVC设置了8G的存储限额,nginx-dm
这个Deployment使用了该PVC,进入该Deployment中的Pod执行测试:
dd if=/dev/zero of=test bs=1G count=10
-
+
从截图中可以看到创建了9个size为1G的block后无法继续创建了,已经超出了8G的限额。
kubelet 的配置文件 /etc/kubernetes/kubelet
中的配置中将集群 DNS 的 domain name 配置成了 ––cluster-domain=cluster.local.
,虽然对于 service 的名字能够正常的完成 DNS 解析,但是对于 headless service 中的 pod 名字解析不了,查看 pod 的 /etc/resolv.conf
文件可以看到以下内容:
这条技巧补充了第一条获取 podIP 的内容,方法都是一样的,只不过列出了更多的引用字段。
+参考下面的 pod 定义,每个 pod 里都有一个 {.spec.nodeName} 字段,通过 fieldRef
和环境变量,就可以在Pod中获取宿主机的主机名(访问环境变量MY_NODE_NAME
)。
apiVersion: v1
+kind: Pod
+metadata:
+ name: dapi-test-pod
+spec:
+ containers:
+ - name: test-container
+ image: busybox
+ command: [ "/bin/sh", "-c", "env" ]
+ 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
+ - name: MY_POD_SERVICE_ACCOUNT
+ valueFrom:
+ fieldRef:
+ fieldPath: spec.serviceAccountName
+ restartPolicy: Never
+
@@ -2225,12 +2530,12 @@
-
+
-
+
@@ -2241,7 +2546,7 @@
diff --git a/cloud-native/kubernetes-and-cloud-native-app-overview.html b/cloud-native/kubernetes-and-cloud-native-app-overview.html
index 02621f098..4b687a358 100644
--- a/cloud-native/kubernetes-and-cloud-native-app-overview.html
+++ b/cloud-native/kubernetes-and-cloud-native-app-overview.html
@@ -4,7 +4,7 @@
-