-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathmeridio.nordix.org_attractors.yaml
291 lines (291 loc) · 12.3 KB
/
meridio.nordix.org_attractors.yaml
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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.10.0
creationTimestamp: null
name: attractors.meridio.nordix.org
spec:
group: meridio.nordix.org
names:
kind: Attractor
listKind: AttractorList
plural: attractors
singular: attractor
scope: Namespaced
versions:
- additionalPrinterColumns:
- jsonPath: .spec.interface.name
name: Interface-Name
type: string
- jsonPath: .spec.interface.type
name: Interface-Type
type: string
- jsonPath: .spec.gateways
name: Gateways
type: string
- jsonPath: .spec.vips
name: Vips
type: string
- jsonPath: .spec.composites
name: Composites
type: string
- jsonPath: .spec.replicas
name: Replicas
type: string
- jsonPath: .metadata.labels.trench
name: Trench
type: string
name: v1
schema:
openAPIV3Schema:
description: Attractor is the Schema for the attractors API. It defines how
traffic are attracted and lead into the K8s cluster. This includes which
external interface to consume. The Attractor is instantiated as a set of
pods running frontend functionality.
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: AttractorSpec defines the desired state of Attractor
properties:
composites:
description: Reference to the composite conduits
items:
type: string
type: array
gateways:
description: gateways that attractor expect to use
items:
type: string
type: array
interface:
description: defines the interface information that attractor use
properties:
ipv4-prefix:
description: (immutable) IPv4 prefix or range of the interface,
which is used for frontend to set up communication with the
ipv4 gateways. If the type is "nsm-vlan", this information must
be specified. For example, '192.168.100.0/24', '192.168.100.1-192.168.100.100/24'.
Multiple IP ranges can be combined using semicolon delimiter,
but they must belong to the same network. For example, '192.168.100.3-192.168.100.100/24;192.168.100.200-192.168.100.250/24'.
type: string
ipv6-prefix:
description: (immutable) IPv6 prefix or range of the interface,
which is used for frontend to set up communication with the
ipv6 gateways. If the type is "nsm-vlan", this information must
be specified. For example, '100:100::/64', '100:100::bbbb-100:100::cccc/64'.
Multiple IP ranges can be combined using semicolon delimiter,
but they must belong to the same network. For example, '100:100::2-100:100::ffff/64;100:100::a:2-100:100::a:f/64;100:100::e:2-100:100::e:f/64'.
type: string
name:
description: Name of the interface. Must be a valid Linux kernel
interface name.
pattern: ^[^:\//\s]{1,13}$
type: string
network-attachments:
description: If the type is "network-attachment", this information
must be specified. One NetworkAttachmentSpec allowed currently.
items:
description: 'NetworkAttachmentSpec identifies a Network Attachment
Definition intended to setup an interface. It is a subset
of NetworkSelectionElement: https://pkg.go.dev/github.com/k8snetworkplumbingwg/network-attachment-definition-client/pkg/apis/k8s.cni.cncf.io/v1#NetworkSelectionElement'
properties:
interface:
description: Name to be used as the given name for the POD
interface. Must be a valid Linux kernel interface name.
pattern: ^[^:\//\s]{1,13}$
type: string
name:
description: Name of the Network Attachment Definition.
Must be a valid lowercase RFC 1123 subdomain.
maxLength: 253
pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
type: string
namespace:
default: default
description: Kubernetes namespace where the Network Attachment
Definition is defined. Must be a valid lowercase RFC 1123
label. Its default value is "default".
pattern: ^[a-z0-9](?:[a-z0-9-]{0,61}?[a-z0-9])?$
type: string
type: object
type: array
nsm-vlan:
description: If the type is "nsm-vlan", this information must
be specified.
properties:
base-interface:
description: (immutable) master interface of the vlan interface
to be used for external connectivity
type: string
vlan-id:
description: (immutable) vlan ID of the vlan interface to
be used for external connectivity
format: int32
type: integer
type: object
type:
default: nsm-vlan
description: Interface choice.
enum:
- nsm-vlan
- network-attachment
type: string
required:
- name
type: object
replicas:
default: 1
description: The number of front-end pods. (The load-balancer is bundled
with front-end currently)
format: int32
type: integer
vips:
description: vips that attractor will announce to the gateways when
possible
items:
type: string
type: array
required:
- composites
- interface
type: object
status:
description: AttractorStatus defines the observed state of Attractor
type: object
type: object
served: true
storage: true
subresources:
status: {}
- additionalPrinterColumns:
- jsonPath: .spec.interface.name
name: Interface-Name
type: string
- jsonPath: .spec.interface.type
name: Interface-Type
type: string
- jsonPath: .spec.gateways
name: Gateways
type: string
- jsonPath: .spec.vips
name: Vips
type: string
- jsonPath: .spec.composites
name: Composites
type: string
- jsonPath: .spec.replicas
name: Replicas
type: string
- jsonPath: .metadata.labels.trench
name: Trench
type: string
deprecated: true
name: v1alpha1
schema:
openAPIV3Schema:
description: Attractor is the Schema for the attractors API. It defines how
traffic are attracted and lead into the K8s cluster. This includes which
external interface to consume. The Attractor is instantiated as a set of
pods running frontend functionality.
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: AttractorSpec defines the desired state of Attractor
properties:
composites:
description: Reference to the composite conduits
items:
type: string
type: array
gateways:
description: gateways that attractor expect to use
items:
type: string
type: array
interface:
description: defines the interface information that attractor use
properties:
ipv4-prefix:
description: (immutable) ipv4 prefix of the interface, which is
used for frontend to set up communication with the ipv4 gateways
type: string
ipv6-prefix:
description: (immutable) ipv6 prefix of the interface, which is
used for frontend to set up communication with the ipv6 gateways
type: string
name:
description: name of the interface
type: string
nsm-vlan:
description: if the type is "nsm-vlan", this information must
be specified
properties:
base-interface:
description: (immutable) master interface of the vlan interface
to be used for external connectivity
type: string
vlan-id:
description: (immutable) vlan ID of the vlan interface to
be used for external connectivity
format: int32
type: integer
type: object
type:
default: nsm-vlan
description: interface choice.
enum:
- nsm-vlan
type: string
required:
- ipv4-prefix
- ipv6-prefix
- name
type: object
replicas:
default: 1
description: The number of front-end pods. (The load-balancer is bundled
with front-end currently)
format: int32
type: integer
vips:
description: vips that attractor will announce to the gateways when
possible
items:
type: string
type: array
required:
- composites
- interface
type: object
status:
description: AttractorStatus defines the observed state of Attractor
type: object
type: object
served: true
storage: false
subresources:
status: {}