File tree 4 files changed +21
-21
lines changed
4 files changed +21
-21
lines changed Original file line number Diff line number Diff line change 1
1
all : push
2
2
3
- # See pod .yaml for the version currently running-- bump this ahead before rebuilding!
3
+ # See node-problem-detector .yaml for the version currently running-- bump this ahead before rebuilding!
4
4
TAG = v0.2
5
5
6
6
PROJ = google_containers
Original file line number Diff line number Diff line change @@ -73,14 +73,10 @@ spec:
73
73
securityContext :
74
74
privileged : true
75
75
env :
76
- - name : POD_NAME
76
+ - name : NODE_NAME
77
77
valueFrom :
78
78
fieldRef :
79
- fieldPath : metadata.name
80
- - name : POD_NAMESPACE
81
- valueFrom :
82
- fieldRef :
83
- fieldPath : metadata.namespace
79
+ fieldPath : spec.nodeName
84
80
volumeMounts :
85
81
- name : log
86
82
mountPath : /log
Original file line number Diff line number Diff line change @@ -18,14 +18,10 @@ spec:
18
18
securityContext :
19
19
privileged : true
20
20
env :
21
- - name : POD_NAME
21
+ - name : NODE_NAME
22
22
valueFrom :
23
23
fieldRef :
24
- fieldPath : metadata.name
25
- - name : POD_NAMESPACE
26
- valueFrom :
27
- fieldRef :
28
- fieldPath : metadata.namespace
24
+ fieldPath : spec.nodeName
29
25
volumeMounts :
30
26
- name : log
31
27
mountPath : /log
Original file line number Diff line number Diff line change @@ -57,15 +57,23 @@ func NewClientOrDie() Client {
57
57
}
58
58
// TODO(random-liu): Set QPS Limit
59
59
c .client = client .NewOrDie (cfg )
60
- // Get node name from the current pod.
61
- pod , err := c .client .Pods (os .Getenv ("POD_NAMESPACE" )).Get (os .Getenv ("POD_NAME" ))
62
- if err != nil {
63
- panic (err )
64
- }
65
- if pod .Spec .NodeName == "" {
66
- panic ("empty node name" )
60
+ // Get node name from environment variable NODE_NAME
61
+ // By default, assume that the NODE_NAME env should have been set with
62
+ // downward api. We prefer it because sometimes the hostname returned
63
+ // by os.Hostname is not right because:
64
+ // 1. User may override the hostname.
65
+ // 2. For some cloud providers, os.Hostname is different from the real hostname.
66
+ c .nodeName = os .Getenv ("NODE_NAME" )
67
+ if c .nodeName == "" {
68
+ // For backward compatibility. If the env is not set, get the hostname
69
+ // from os.Hostname(). This may not work for all configurations and
70
+ // environments.
71
+ var err error
72
+ c .nodeName , err = os .Hostname ()
73
+ if err != nil {
74
+ panic ("empty node name" )
75
+ }
67
76
}
68
- c .nodeName = pod .Spec .NodeName
69
77
c .nodeRef = getNodeRef (c .nodeName )
70
78
c .recorders = make (map [string ]record.EventRecorder )
71
79
return c
You can’t perform that action at this time.
0 commit comments