forked from cw-ozaki/kubernetes-json-schema
-
Notifications
You must be signed in to change notification settings - Fork 0
/
nodespec-v1.json
116 lines (116 loc) · 4.16 KB
/
nodespec-v1.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
{
"description": "NodeSpec describes the attributes that a node is created with.",
"properties": {
"configSource": {
"description": "NodeConfigSource specifies a source of node configuration. Exactly one subfield (excluding metadata) must be non-nil.",
"properties": {
"configMap": {
"description": "ConfigMapNodeConfigSource contains the information to reference a ConfigMap as a config source for the Node.",
"required": [
"namespace",
"name",
"kubeletConfigKey"
],
"properties": {
"kubeletConfigKey": {
"description": "KubeletConfigKey declares which key of the referenced ConfigMap corresponds to the KubeletConfiguration structure This field is required in all cases.",
"type": "string"
},
"name": {
"description": "Name is the metadata.name of the referenced ConfigMap. This field is required in all cases.",
"type": "string"
},
"namespace": {
"description": "Namespace is the metadata.namespace of the referenced ConfigMap. This field is required in all cases.",
"type": "string"
},
"resourceVersion": {
"description": "ResourceVersion is the metadata.ResourceVersion of the referenced ConfigMap. This field is forbidden in Node.Spec, and required in Node.Status.",
"type": [
"string",
"null"
]
},
"uid": {
"description": "UID is the metadata.UID of the referenced ConfigMap. This field is forbidden in Node.Spec, and required in Node.Status.",
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"externalID": {
"description": "Deprecated. Not all kubelets will set this field. Remove field after 1.13. see: https://issues.k8s.io/61966",
"type": [
"string",
"null"
]
},
"podCIDR": {
"description": "PodCIDR represents the pod IP range assigned to the node.",
"type": [
"string",
"null"
]
},
"providerID": {
"description": "ID of the node assigned by the cloud provider in the format: <ProviderName>://<ProviderSpecificNodeID>",
"type": [
"string",
"null"
]
},
"taints": {
"description": "If specified, the node's taints.",
"type": [
"array",
"null"
],
"items": {
"description": "The node this Taint is attached to has the \"effect\" on any pod that does not tolerate the Taint.",
"required": [
"key",
"effect"
],
"properties": {
"effect": {
"description": "Required. The effect of the taint on pods that do not tolerate the taint. Valid effects are NoSchedule, PreferNoSchedule and NoExecute.",
"type": "string"
},
"key": {
"description": "Required. The taint key to be applied to a node.",
"type": "string"
},
"timeAdded": {
"description": "Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.",
"type": [
"string",
"null"
],
"format": "date-time"
},
"value": {
"description": "Required. The taint value corresponding to the taint key.",
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
}
},
"unschedulable": {
"description": "Unschedulable controls node schedulability of new pods. By default, node is schedulable. More info: https://kubernetes.io/docs/concepts/nodes/node/#manual-node-administration",
"type": "boolean"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/schema#",
"type": "object"
}