fix(kafka): retain failed message persistence
This commit is contained in:
@@ -25,6 +25,7 @@ After ArgoCD sync, verify the effective configuration:
|
||||
kubectl -n im-server-system get statefulset im-server -o jsonpath='{.spec.template.spec.containers[0].resources}'
|
||||
kubectl -n im-server-system get statefulset im-server -o jsonpath='{.spec.template.spec.containers[0].livenessProbe.httpGet.path}'
|
||||
kubectl -n im-server-system get statefulset im-server -o jsonpath='{.spec.template.spec.containers[0].env}'
|
||||
kubectl -n im-server-system get statefulset im-server -o jsonpath='{.spec.template.spec.dnsConfig.options}'
|
||||
kubectl auth can-i list pods.metrics.k8s.io \
|
||||
--as=system:serviceaccount:argocd:backend-debug \
|
||||
-n im-server-system
|
||||
@@ -36,5 +37,24 @@ liveness path `/livez`. The MySQL pool environment must be
|
||||
`MYSQL_REGISTRY_MAX_OPEN_CONNS=4`, and `MYSQL_REGISTRY_MAX_IDLE_CONNS=2`.
|
||||
The WebSocket heartbeat environment must be `WS_PING_PERIOD_SECONDS=15` and
|
||||
`WS_PONG_WAIT_SECONDS=90`.
|
||||
The Pod DNS options must be `ndots:1`, `timeout:2`, and `attempts:2`. Keeping
|
||||
`ClusterFirst` preserves short Kubernetes service-name resolution, while the
|
||||
lower `ndots` value prevents fully qualified internal and external dependency
|
||||
names from being expanded through every cluster search suffix first.
|
||||
The application repository's deploy workflow waits for reconciliation and
|
||||
fails if ArgoCD restores different values.
|
||||
|
||||
After the rollout, verify the generated resolver configuration on every Pod:
|
||||
|
||||
```bash
|
||||
for pod in im-server-0 im-server-1 im-server-2; do
|
||||
echo "--- ${pod}"
|
||||
kubectl -n im-server-system exec "${pod}" -- cat /etc/resolv.conf
|
||||
done
|
||||
```
|
||||
|
||||
The output must retain the cluster DNS nameserver and search domains, with
|
||||
`options ndots:1 timeout:2 attempts:2`. This mitigation reduces amplified DNS
|
||||
traffic from the application Pods. If lookup timeouts remain under load,
|
||||
CoreDNS capacity or NodeLocal DNSCache must be changed in the cluster
|
||||
infrastructure repository by an administrator with `kube-system` access.
|
||||
|
||||
@@ -6,6 +6,15 @@ metadata:
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
dnsPolicy: ClusterFirst
|
||||
dnsConfig:
|
||||
options:
|
||||
- name: ndots
|
||||
value: "1"
|
||||
- name: timeout
|
||||
value: "2"
|
||||
- name: attempts
|
||||
value: "2"
|
||||
containers:
|
||||
- name: im-server
|
||||
env:
|
||||
|
||||
Reference in New Issue
Block a user