Dear Sheng WU,and other teachers:
I have set up a k8s cluster in local network that can be not connected to the Internet, and I use Helm to install skywalking in my k8s cluster, and I choose the WeChat Hook in alarm-settings.yml as the way to sent alarm messages to the wechat enpterprise edtion, as you know that my k8s cluster can not connect to the Internet,So if you don't use http proxy, you won't be able to send alerts to enterprise wechat, but I can't find any configuration parameters for http proxy in the configuration file, so how am I supposed to send out an alert on the k8s Lan through another proxy server that's connected to the outside network.
I tried to add an env http-proxy in my deplyment skywalking-oap ,and change the network to hostNetwork, but it still fails.
The following is skywalking-oap deployment's yaml :
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
annotations:
deployment.kubernetes.io/revision: "3"
field.cattle.io/publicEndpoints: '[{"addresses":["10.142.243.11"],"port":31198,"protocol":"TCP","serviceName":"skywalking:skywalking-oap","allNodes":true},{"addresses":["10.142.243.11"],"port":32315,"protocol":"TCP","serviceName":"skywalking:skywalking-oap","allNodes":true},{"nodeName":"c-fxr4b:machine-4ll7z","addresses":["10.142.243.28"],"port":11800,"protocol":"TCP","podName":"skywalking:skywalking-oap-b8c5ddb98-k9bws","allNodes":false},{"nodeName":"c-fxr4b:machine-4ll7z","addresses":["10.142.243.28"],"port":12800,"protocol":"TCP","podName":"skywalking:skywalking-oap-b8c5ddb98-k9bws","allNodes":false}]'
meta.helm.sh/release-name: skywalking
meta.helm.sh/release-namespace: skywalking
creationTimestamp: "2021-06-25T03:33:36Z"
generation: 5
labels:
app: skywalking
app.kubernetes.io/managed-by: Helm
chart: skywalking-4.0.0
component: oap
heritage: Helm
release: skywalking
name: skywalking-oap
namespace: skywalking
resourceVersion: "208588611"
selfLink: /apis/extensions/v1beta1/namespaces/skywalking/deployments/skywalking-oap
uid: db44d935-f195-46ca-bc27-801bd5c50cf3
spec:
progressDeadlineSeconds: 600
replicas: 1
revisionHistoryLimit: 10
selector:
matchLabels:
app: skywalking
component: oap
release: skywalking
strategy:
rollingUpdate:
maxSurge: 25%
maxUnavailable: 25%
type: RollingUpdate
template:
metadata:
creationTimestamp: null
labels:
app: skywalking
component: oap
release: skywalking
spec:
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- podAffinityTerm:
labelSelector:
matchLabels:
app: skywalking
component: oap
release: skywalking
topologyKey: kubernetes.io/hostname
weight: 1
containers:
- env:
- name: JAVA_OPTS
value: -Dmode=no-init -Xmx2g -Xms2g
- name: SW_CLUSTER
value: kubernetes
- name: SW_CLUSTER_K8S_NAMESPACE
value: skywalking
- name: SW_CLUSTER_K8S_LABEL
value: app=skywalking,release=skywalking,component=oap
- name: SKYWALKING_COLLECTOR_UID
valueFrom:
fieldRef:
apiVersion: v1
fieldPath: metadata.uid
- name: SW_STORAGE
value: elasticsearch7
- name: SW_STORAGE_ES_CLUSTER_NODES
value: 11.112.213.11:9200
- name: SW_ES_USER
value: xxx
- name: SW_ES_PASSWORD
value: xxx
- name: TZ
value: Asia/Shanghai
- name: http_proxy
value: http://10.211.111.11:3128
- name: https_proxy
value: http://10.211.111.11:3128
image: registry.paas.dev/xyyd/skywalking-oap-server:8.5.0-es7
imagePullPolicy: IfNotPresent
livenessProbe:
failureThreshold: 3
initialDelaySeconds: 150
periodSeconds: 20
successThreshold: 1
tcpSocket:
port: 12800
timeoutSeconds: 1
name: oap
ports:
- containerPort: 11800
hostPort: 11800
name: grpc
protocol: TCP
- containerPort: 12800
hostPort: 12800
name: rest
protocol: TCP
readinessProbe:
failureThreshold: 3
initialDelaySeconds: 150
periodSeconds: 20
successThreshold: 1
tcpSocket:
port: 12800
timeoutSeconds: 1
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
volumeMounts:
- mountPath: /skywalking/config/alarm-settings.yml
name: skywalking-oap-override
subPath: YWxhcm0tc2V0dGluZ3MueW1s
dnsPolicy: ClusterFirst
hostNetwork: true
initContainers:
- command:
- sh
- -c
- for i in $(seq 1 60); do nc -z -w3 10.142.243.12 9200 && exit 0 || sleep
5; done; exit 1
image: registry.paas.dev/xyyd/busybox:1.30
imagePullPolicy: IfNotPresent
name: wait-for-elasticsearch
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
restartPolicy: Always
schedulerName: default-scheduler
securityContext: {}
serviceAccount: skywalking-oap
serviceAccountName: skywalking-oap
terminationGracePeriodSeconds: 30
volumes:
- configMap:
defaultMode: 420
name: skywalking-oap-cm-override
name: skywalking-oap-override
status:
availableReplicas: 1
conditions:
- lastTransitionTime: "2021-06-25T03:36:30Z"
lastUpdateTime: "2021-06-25T03:36:30Z"
message: Deployment has minimum availability.
reason: MinimumReplicasAvailable
status: "True"
type: Available
- lastTransitionTime: "2021-06-25T03:33:36Z"
lastUpdateTime: "2021-06-25T03:50:40Z"
message: ReplicaSet "skywalking-oap-b8c5ddb98" has successfully progressed.
reason: NewReplicaSetAvailable
status: "True"
type: Progressing
observedGeneration: 5
readyReplicas: 1
replicas: 1
Dear Sheng WU,and other teachers:
I have set up a k8s cluster in local network that can be not connected to the Internet, and I use Helm to install skywalking in my k8s cluster, and I choose the WeChat Hook in alarm-settings.yml as the way to sent alarm messages to the wechat enpterprise edtion, as you know that my k8s cluster can not connect to the Internet,So if you don't use http proxy, you won't be able to send alerts to enterprise wechat, but I can't find any configuration parameters for http proxy in the configuration file, so how am I supposed to send out an alert on the k8s Lan through another proxy server that's connected to the outside network.
I tried to add an env http-proxy in my deplyment skywalking-oap ,and change the network to hostNetwork, but it still fails.
The following is skywalking-oap deployment's yaml :
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
annotations:
deployment.kubernetes.io/revision: "3"
field.cattle.io/publicEndpoints: '[{"addresses":["10.142.243.11"],"port":31198,"protocol":"TCP","serviceName":"skywalking:skywalking-oap","allNodes":true},{"addresses":["10.142.243.11"],"port":32315,"protocol":"TCP","serviceName":"skywalking:skywalking-oap","allNodes":true},{"nodeName":"c-fxr4b:machine-4ll7z","addresses":["10.142.243.28"],"port":11800,"protocol":"TCP","podName":"skywalking:skywalking-oap-b8c5ddb98-k9bws","allNodes":false},{"nodeName":"c-fxr4b:machine-4ll7z","addresses":["10.142.243.28"],"port":12800,"protocol":"TCP","podName":"skywalking:skywalking-oap-b8c5ddb98-k9bws","allNodes":false}]'
meta.helm.sh/release-name: skywalking
meta.helm.sh/release-namespace: skywalking
creationTimestamp: "2021-06-25T03:33:36Z"
generation: 5
labels:
app: skywalking
app.kubernetes.io/managed-by: Helm
chart: skywalking-4.0.0
component: oap
heritage: Helm
release: skywalking
name: skywalking-oap
namespace: skywalking
resourceVersion: "208588611"
selfLink: /apis/extensions/v1beta1/namespaces/skywalking/deployments/skywalking-oap
uid: db44d935-f195-46ca-bc27-801bd5c50cf3
spec:
progressDeadlineSeconds: 600
replicas: 1
revisionHistoryLimit: 10
selector:
matchLabels:
app: skywalking
component: oap
release: skywalking
strategy:
rollingUpdate:
maxSurge: 25%
maxUnavailable: 25%
type: RollingUpdate
template:
metadata:
creationTimestamp: null
labels:
app: skywalking
component: oap
release: skywalking
spec:
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- podAffinityTerm:
labelSelector:
matchLabels:
app: skywalking
component: oap
release: skywalking
topologyKey: kubernetes.io/hostname
weight: 1
containers:
- env:
- name: JAVA_OPTS
value: -Dmode=no-init -Xmx2g -Xms2g
- name: SW_CLUSTER
value: kubernetes
- name: SW_CLUSTER_K8S_NAMESPACE
value: skywalking
- name: SW_CLUSTER_K8S_LABEL
value: app=skywalking,release=skywalking,component=oap
- name: SKYWALKING_COLLECTOR_UID
valueFrom:
fieldRef:
apiVersion: v1
fieldPath: metadata.uid
- name: SW_STORAGE
value: elasticsearch7
- name: SW_STORAGE_ES_CLUSTER_NODES
value: 11.112.213.11:9200
- name: SW_ES_USER
value: xxx
- name: SW_ES_PASSWORD
value: xxx
- name: TZ
value: Asia/Shanghai
- name: http_proxy
value: http://10.211.111.11:3128
- name: https_proxy
value: http://10.211.111.11:3128
image: registry.paas.dev/xyyd/skywalking-oap-server:8.5.0-es7
imagePullPolicy: IfNotPresent
livenessProbe:
failureThreshold: 3
initialDelaySeconds: 150
periodSeconds: 20
successThreshold: 1
tcpSocket:
port: 12800
timeoutSeconds: 1
name: oap
ports:
- containerPort: 11800
hostPort: 11800
name: grpc
protocol: TCP
- containerPort: 12800
hostPort: 12800
name: rest
protocol: TCP
readinessProbe:
failureThreshold: 3
initialDelaySeconds: 150
periodSeconds: 20
successThreshold: 1
tcpSocket:
port: 12800
timeoutSeconds: 1
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
volumeMounts:
- mountPath: /skywalking/config/alarm-settings.yml
name: skywalking-oap-override
subPath: YWxhcm0tc2V0dGluZ3MueW1s
dnsPolicy: ClusterFirst
hostNetwork: true
initContainers:
- command:
- sh
- -c
- for i in $(seq 1 60); do nc -z -w3 10.142.243.12 9200 && exit 0 || sleep
5; done; exit 1
image: registry.paas.dev/xyyd/busybox:1.30
imagePullPolicy: IfNotPresent
name: wait-for-elasticsearch
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
restartPolicy: Always
schedulerName: default-scheduler
securityContext: {}
serviceAccount: skywalking-oap
serviceAccountName: skywalking-oap
terminationGracePeriodSeconds: 30
volumes:
- configMap:
defaultMode: 420
name: skywalking-oap-cm-override
name: skywalking-oap-override
status:
availableReplicas: 1
conditions:
lastUpdateTime: "2021-06-25T03:36:30Z"
message: Deployment has minimum availability.
reason: MinimumReplicasAvailable
status: "True"
type: Available
lastUpdateTime: "2021-06-25T03:50:40Z"
message: ReplicaSet "skywalking-oap-b8c5ddb98" has successfully progressed.
reason: NewReplicaSetAvailable
status: "True"
type: Progressing
observedGeneration: 5
readyReplicas: 1
replicas: 1