metallb.yaml 68 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730
  1. ---
  2. # Source: metallb/templates/service-accounts.yaml
  3. apiVersion: v1
  4. kind: ServiceAccount
  5. metadata:
  6. name: metallb-controller
  7. labels:
  8. helm.sh/chart: metallb-0.13.7
  9. app.kubernetes.io/name: metallb
  10. app.kubernetes.io/instance: metallb
  11. app.kubernetes.io/version: "v0.13.7"
  12. app.kubernetes.io/managed-by: Helm
  13. app.kubernetes.io/component: controller
  14. ---
  15. # Source: metallb/templates/service-accounts.yaml
  16. apiVersion: v1
  17. kind: ServiceAccount
  18. metadata:
  19. name: metallb-speaker
  20. labels:
  21. helm.sh/chart: metallb-0.13.7
  22. app.kubernetes.io/name: metallb
  23. app.kubernetes.io/instance: metallb
  24. app.kubernetes.io/version: "v0.13.7"
  25. app.kubernetes.io/managed-by: Helm
  26. app.kubernetes.io/component: speaker
  27. ---
  28. # Source: metallb/templates/webhooks.yaml
  29. apiVersion: v1
  30. kind: Secret
  31. metadata:
  32. name: webhook-server-cert
  33. labels:
  34. helm.sh/chart: metallb-0.13.7
  35. app.kubernetes.io/name: metallb
  36. app.kubernetes.io/instance: metallb
  37. app.kubernetes.io/version: "v0.13.7"
  38. app.kubernetes.io/managed-by: Helm
  39. ---
  40. # Source: metallb/charts/crds/templates/crds.yaml
  41. apiVersion: apiextensions.k8s.io/v1
  42. kind: CustomResourceDefinition
  43. metadata:
  44. annotations:
  45. controller-gen.kubebuilder.io/version: v0.7.0
  46. creationTimestamp: null
  47. name: addresspools.metallb.io
  48. spec:
  49. group: metallb.io
  50. names:
  51. kind: AddressPool
  52. listKind: AddressPoolList
  53. plural: addresspools
  54. singular: addresspool
  55. scope: Namespaced
  56. conversion:
  57. strategy: Webhook
  58. webhook:
  59. conversionReviewVersions: ["v1alpha1", "v1beta1"]
  60. clientConfig:
  61. # this is a valid pem format, otherwise the apiserver will reject the deletion of the crds
  62. # with "unable to parse bytes as PEM block", The controller will patch it with the right content after it starts
  63. caBundle: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tDQpNSUlGWlRDQ0EwMmdBd0lCQWdJVU5GRW1XcTM3MVpKdGkrMmlSQzk1WmpBV1MxZ3dEUVlKS29aSWh2Y05BUUVMDQpCUUF3UWpFTE1Ba0dBMVVFQmhNQ1dGZ3hGVEFUQmdOVkJBY01ERVJsWm1GMWJIUWdRMmwwZVRFY01Cb0dBMVVFDQpDZ3dUUkdWbVlYVnNkQ0JEYjIxd1lXNTVJRXgwWkRBZUZ3MHlNakEzTVRrd09UTXlNek5hRncweU1qQTRNVGd3DQpPVE15TXpOYU1FSXhDekFKQmdOVkJBWVRBbGhZTVJVd0V3WURWUVFIREF4RVpXWmhkV3gwSUVOcGRIa3hIREFhDQpCZ05WQkFvTUUwUmxabUYxYkhRZ1EyOXRjR0Z1ZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElDDQpEd0F3Z2dJS0FvSUNBUUNxVFpxMWZRcC9vYkdlenhES0o3OVB3Ny94azJwellualNzMlkzb1ZYSm5sRmM4YjVlDQpma2ZZQnY2bndscW1keW5PL2phWFBaQmRQSS82aFdOUDBkdVhadEtWU0NCUUpyZzEyOGNXb3F0MGNTN3pLb1VpDQpvcU1tQ0QvRXVBeFFNZjhRZDF2c1gvVllkZ0poVTZBRXJLZEpIaXpFOUJtUkNkTDBGMW1OVW55Rk82UnRtWFZUDQpidkxsTDVYeTc2R0FaQVBLOFB4aVlDa0NtbDdxN0VnTWNiOXlLWldCYmlxQ3VkTXE5TGJLNmdKNzF6YkZnSXV4DQo1L1pXK2JraTB2RlplWk9ZODUxb1psckFUNzJvMDI4NHNTWW9uN0pHZVZkY3NoUnh5R1VpSFpSTzdkaXZVTDVTDQpmM2JmSDFYbWY1ZDQzT0NWTWRuUUV2NWVaOG8zeWVLa3ZrbkZQUGVJMU9BbjdGbDlFRVNNR2dhOGFaSG1URSttDQpsLzlMSmdDYjBnQmtPT0M0WnV4bWh2aERKV1EzWnJCS3pMQlNUZXN0NWlLNVlwcXRWVVk2THRyRW9FelVTK1lsDQpwWndXY2VQWHlHeHM5ZURsR3lNVmQraW15Y3NTU1UvVno2Mmx6MnZCS21NTXBkYldDQWhud0RsRTVqU2dyMjRRDQp0eGNXLys2N3d5KzhuQlI3UXdqVTFITndVRjBzeERWdEwrZ1NHVERnSEVZSlhZelYvT05zMy94TkpoVFNPSkxNDQpoeXNVdyttaGdackdhbUdXcHVIVU1DUitvTWJzMTc1UkcrQjJnUFFHVytPTjJnUTRyOXN2b0ZBNHBBQm8xd1dLDQpRYjRhY3pmeVVscElBOVFoSmFsZEY3S3dPSHVlV3gwRUNrNXg0T2tvVDBvWVp0dzFiR0JjRGtaSmF3SURBUUFCDQpvMU13VVRBZEJnTlZIUTRFRmdRVW90UlNIUm9IWTEyRFZ4R0NCdEhpb1g2ZmVFQXdId1lEVlIwakJCZ3dGb0FVDQpvdFJTSFJvSFkxMkRWeEdDQnRIaW9YNmZlRUF3RHdZRFZSMFRBUUgvQkFVd0F3RUIvekFOQmdrcWhraUc5dzBCDQpBUXNGQUFPQ0FnRUFSbkpsWWRjMTFHd0VxWnh6RDF2R3BDR2pDN2VWTlQ3aVY1d3IybXlybHdPYi9aUWFEa0xYDQpvVStaOVVXT1VlSXJTdzUydDdmQUpvVVAwSm5iYkMveVIrU1lqUGhvUXNiVHduOTc2ZldBWTduM3FMOXhCd1Y0DQphek41OXNjeUp0dlhMeUtOL2N5ak1ReDRLajBIMFg0bWJ6bzVZNUtzWWtYVU0vOEFPdWZMcEd0S1NGVGgrSEFDDQpab1Q5YnZHS25adnNHd0tYZFF0Wnh0akhaUjVqK3U3ZGtQOTJBT051RFNabS8rWVV4b2tBK09JbzdSR3BwSHNXDQo1ZTdNY0FTVXRtb1FORXd6dVFoVkJaRWQ1OGtKYjUrV0VWbGNzanlXNnRTbzErZ25tTWNqR1BsMWgxR2hVbjV4DQpFY0lWRnBIWXM5YWo1NmpBSjk1MVQvZjhMaWxmTlVnanBLQ0c1bnl0SUt3emxhOHNtdGlPdm1UNEpYbXBwSkI2DQo4bmdHRVluVjUrUTYwWFJ2OEhSSGp1VG9CRHVhaERrVDA2R1JGODU1d09FR2V4bkZpMXZYWUxLVllWb1V2MXRKDQo4dVdUR1pwNllDSVJldlBqbzg5ZytWTlJSaVFYUThJd0dybXE5c0RoVTlqTjA0SjdVL1RvRDFpNHE3VnlsRUc5DQorV1VGNkNLaEdBeTJIaEhwVncyTGFoOS9lUzdZMUZ1YURrWmhPZG1laG1BOCtqdHNZamJadnR5Mm1SWlF0UUZzDQpUU1VUUjREbUR2bVVPRVRmeStpRHdzK2RkWXVNTnJGeVVYV2dkMnpBQU4ydVl1UHFGY2pRcFNPODFzVTJTU3R3DQoxVzAyeUtYOGJEYmZFdjBzbUh3UzliQnFlSGo5NEM1Mjg0YXpsdTBmaUdpTm1OUEM4ckJLRmhBPQ0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQ==
  64. service:
  65. namespace: default
  66. name: metallb-webhook-service
  67. path: /convert
  68. versions:
  69. - deprecated: true
  70. deprecationWarning: metallb.io v1alpha1 AddressPool is deprecated
  71. name: v1alpha1
  72. schema:
  73. openAPIV3Schema:
  74. description: AddressPool is the Schema for the addresspools API.
  75. properties:
  76. apiVersion:
  77. description: 'APIVersion defines the versioned schema of this representation
  78. of an object. Servers should convert recognized schemas to the latest
  79. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  80. type: string
  81. kind:
  82. description: 'Kind is a string value representing the REST resource this
  83. object represents. Servers may infer this from the endpoint the client
  84. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  85. type: string
  86. metadata:
  87. type: object
  88. spec:
  89. description: AddressPoolSpec defines the desired state of AddressPool.
  90. properties:
  91. addresses:
  92. description: A list of IP address ranges over which MetalLB has authority.
  93. You can list multiple ranges in a single pool, they will all share
  94. the same settings. Each range can be either a CIDR prefix, or an
  95. explicit start-end range of IPs.
  96. items:
  97. type: string
  98. type: array
  99. autoAssign:
  100. default: true
  101. description: AutoAssign flag used to prevent MetallB from automatic
  102. allocation for a pool.
  103. type: boolean
  104. bgpAdvertisements:
  105. description: When an IP is allocated from this pool, how should it
  106. be translated into BGP announcements?
  107. items:
  108. properties:
  109. aggregationLength:
  110. default: 32
  111. description: The aggregation-length advertisement option lets
  112. you “roll up” the /32s into a larger prefix.
  113. format: int32
  114. minimum: 1
  115. type: integer
  116. aggregationLengthV6:
  117. default: 128
  118. description: Optional, defaults to 128 (i.e. no aggregation)
  119. if not specified.
  120. format: int32
  121. type: integer
  122. communities:
  123. description: BGP communities
  124. items:
  125. type: string
  126. type: array
  127. localPref:
  128. description: BGP LOCAL_PREF attribute which is used by BGP best
  129. path algorithm, Path with higher localpref is preferred over
  130. one with lower localpref.
  131. format: int32
  132. type: integer
  133. type: object
  134. type: array
  135. protocol:
  136. description: Protocol can be used to select how the announcement is
  137. done.
  138. enum:
  139. - layer2
  140. - bgp
  141. type: string
  142. required:
  143. - addresses
  144. - protocol
  145. type: object
  146. status:
  147. description: AddressPoolStatus defines the observed state of AddressPool.
  148. type: object
  149. required:
  150. - spec
  151. type: object
  152. served: true
  153. storage: false
  154. subresources:
  155. status: {}
  156. - deprecated: true
  157. deprecationWarning: metallb.io v1beta1 AddressPool is deprecated, consider using
  158. IPAddressPool
  159. name: v1beta1
  160. schema:
  161. openAPIV3Schema:
  162. description: AddressPool represents a pool of IP addresses that can be allocated
  163. to LoadBalancer services. AddressPool is deprecated and being replaced by
  164. IPAddressPool.
  165. properties:
  166. apiVersion:
  167. description: 'APIVersion defines the versioned schema of this representation
  168. of an object. Servers should convert recognized schemas to the latest
  169. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  170. type: string
  171. kind:
  172. description: 'Kind is a string value representing the REST resource this
  173. object represents. Servers may infer this from the endpoint the client
  174. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  175. type: string
  176. metadata:
  177. type: object
  178. spec:
  179. description: AddressPoolSpec defines the desired state of AddressPool.
  180. properties:
  181. addresses:
  182. description: A list of IP address ranges over which MetalLB has authority.
  183. You can list multiple ranges in a single pool, they will all share
  184. the same settings. Each range can be either a CIDR prefix, or an
  185. explicit start-end range of IPs.
  186. items:
  187. type: string
  188. type: array
  189. autoAssign:
  190. default: true
  191. description: AutoAssign flag used to prevent MetallB from automatic
  192. allocation for a pool.
  193. type: boolean
  194. bgpAdvertisements:
  195. description: Drives how an IP allocated from this pool should translated
  196. into BGP announcements.
  197. items:
  198. properties:
  199. aggregationLength:
  200. default: 32
  201. description: The aggregation-length advertisement option lets
  202. you “roll up” the /32s into a larger prefix.
  203. format: int32
  204. minimum: 1
  205. type: integer
  206. aggregationLengthV6:
  207. default: 128
  208. description: Optional, defaults to 128 (i.e. no aggregation)
  209. if not specified.
  210. format: int32
  211. type: integer
  212. communities:
  213. description: BGP communities to be associated with the given
  214. advertisement.
  215. items:
  216. type: string
  217. type: array
  218. localPref:
  219. description: BGP LOCAL_PREF attribute which is used by BGP best
  220. path algorithm, Path with higher localpref is preferred over
  221. one with lower localpref.
  222. format: int32
  223. type: integer
  224. type: object
  225. type: array
  226. protocol:
  227. description: Protocol can be used to select how the announcement is
  228. done.
  229. enum:
  230. - layer2
  231. - bgp
  232. type: string
  233. required:
  234. - addresses
  235. - protocol
  236. type: object
  237. status:
  238. description: AddressPoolStatus defines the observed state of AddressPool.
  239. type: object
  240. required:
  241. - spec
  242. type: object
  243. served: true
  244. storage: true
  245. subresources:
  246. status: {}
  247. status:
  248. acceptedNames:
  249. kind: ""
  250. plural: ""
  251. conditions: []
  252. storedVersions: []
  253. ---
  254. # Source: metallb/charts/crds/templates/crds.yaml
  255. apiVersion: apiextensions.k8s.io/v1
  256. kind: CustomResourceDefinition
  257. metadata:
  258. annotations:
  259. controller-gen.kubebuilder.io/version: v0.7.0
  260. creationTimestamp: null
  261. name: bfdprofiles.metallb.io
  262. spec:
  263. group: metallb.io
  264. names:
  265. kind: BFDProfile
  266. listKind: BFDProfileList
  267. plural: bfdprofiles
  268. singular: bfdprofile
  269. scope: Namespaced
  270. versions:
  271. - name: v1beta1
  272. schema:
  273. openAPIV3Schema:
  274. description: BFDProfile represents the settings of the bfd session that can
  275. be optionally associated with a BGP session.
  276. properties:
  277. apiVersion:
  278. description: 'APIVersion defines the versioned schema of this representation
  279. of an object. Servers should convert recognized schemas to the latest
  280. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  281. type: string
  282. kind:
  283. description: 'Kind is a string value representing the REST resource this
  284. object represents. Servers may infer this from the endpoint the client
  285. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  286. type: string
  287. metadata:
  288. type: object
  289. spec:
  290. description: BFDProfileSpec defines the desired state of BFDProfile.
  291. properties:
  292. detectMultiplier:
  293. description: Configures the detection multiplier to determine packet
  294. loss. The remote transmission interval will be multiplied by this
  295. value to determine the connection loss detection timer.
  296. format: int32
  297. maximum: 255
  298. minimum: 2
  299. type: integer
  300. echoInterval:
  301. description: Configures the minimal echo receive transmission interval
  302. that this system is capable of handling in milliseconds. Defaults
  303. to 50ms
  304. format: int32
  305. maximum: 60000
  306. minimum: 10
  307. type: integer
  308. echoMode:
  309. description: Enables or disables the echo transmission mode. This
  310. mode is disabled by default, and not supported on multi hops setups.
  311. type: boolean
  312. minimumTtl:
  313. description: 'For multi hop sessions only: configure the minimum expected
  314. TTL for an incoming BFD control packet.'
  315. format: int32
  316. maximum: 254
  317. minimum: 1
  318. type: integer
  319. passiveMode:
  320. description: 'Mark session as passive: a passive session will not
  321. attempt to start the connection and will wait for control packets
  322. from peer before it begins replying.'
  323. type: boolean
  324. receiveInterval:
  325. description: The minimum interval that this system is capable of receiving
  326. control packets in milliseconds. Defaults to 300ms.
  327. format: int32
  328. maximum: 60000
  329. minimum: 10
  330. type: integer
  331. transmitInterval:
  332. description: The minimum transmission interval (less jitter) that
  333. this system wants to use to send BFD control packets in milliseconds.
  334. Defaults to 300ms
  335. format: int32
  336. maximum: 60000
  337. minimum: 10
  338. type: integer
  339. type: object
  340. status:
  341. description: BFDProfileStatus defines the observed state of BFDProfile.
  342. type: object
  343. type: object
  344. served: true
  345. storage: true
  346. subresources:
  347. status: {}
  348. status:
  349. acceptedNames:
  350. kind: ""
  351. plural: ""
  352. conditions: []
  353. storedVersions: []
  354. ---
  355. # Source: metallb/charts/crds/templates/crds.yaml
  356. apiVersion: apiextensions.k8s.io/v1
  357. kind: CustomResourceDefinition
  358. metadata:
  359. annotations:
  360. controller-gen.kubebuilder.io/version: v0.7.0
  361. creationTimestamp: null
  362. name: bgpadvertisements.metallb.io
  363. spec:
  364. group: metallb.io
  365. names:
  366. kind: BGPAdvertisement
  367. listKind: BGPAdvertisementList
  368. plural: bgpadvertisements
  369. singular: bgpadvertisement
  370. scope: Namespaced
  371. versions:
  372. - name: v1beta1
  373. schema:
  374. openAPIV3Schema:
  375. description: BGPAdvertisement allows to advertise the IPs coming from the
  376. selected IPAddressPools via BGP, setting the parameters of the BGP Advertisement.
  377. properties:
  378. apiVersion:
  379. description: 'APIVersion defines the versioned schema of this representation
  380. of an object. Servers should convert recognized schemas to the latest
  381. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  382. type: string
  383. kind:
  384. description: 'Kind is a string value representing the REST resource this
  385. object represents. Servers may infer this from the endpoint the client
  386. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  387. type: string
  388. metadata:
  389. type: object
  390. spec:
  391. description: BGPAdvertisementSpec defines the desired state of BGPAdvertisement.
  392. properties:
  393. aggregationLength:
  394. default: 32
  395. description: The aggregation-length advertisement option lets you
  396. “roll up” the /32s into a larger prefix. Defaults to 32. Works for
  397. IPv4 addresses.
  398. format: int32
  399. minimum: 1
  400. type: integer
  401. aggregationLengthV6:
  402. default: 128
  403. description: The aggregation-length advertisement option lets you
  404. “roll up” the /128s into a larger prefix. Defaults to 128. Works
  405. for IPv6 addresses.
  406. format: int32
  407. type: integer
  408. communities:
  409. description: The BGP communities to be associated with the announcement.
  410. Each item can be a community of the form 1234:1234 or the name of
  411. an alias defined in the Community CRD.
  412. items:
  413. type: string
  414. type: array
  415. ipAddressPoolSelectors:
  416. description: A selector for the IPAddressPools which would get advertised
  417. via this advertisement. If no IPAddressPool is selected by this
  418. or by the list, the advertisement is applied to all the IPAddressPools.
  419. items:
  420. description: A label selector is a label query over a set of resources.
  421. The result of matchLabels and matchExpressions are ANDed. An empty
  422. label selector matches all objects. A null label selector matches
  423. no objects.
  424. properties:
  425. matchExpressions:
  426. description: matchExpressions is a list of label selector requirements.
  427. The requirements are ANDed.
  428. items:
  429. description: A label selector requirement is a selector that
  430. contains values, a key, and an operator that relates the
  431. key and values.
  432. properties:
  433. key:
  434. description: key is the label key that the selector applies
  435. to.
  436. type: string
  437. operator:
  438. description: operator represents a key's relationship
  439. to a set of values. Valid operators are In, NotIn, Exists
  440. and DoesNotExist.
  441. type: string
  442. values:
  443. description: values is an array of string values. If the
  444. operator is In or NotIn, the values array must be non-empty.
  445. If the operator is Exists or DoesNotExist, the values
  446. array must be empty. This array is replaced during a
  447. strategic merge patch.
  448. items:
  449. type: string
  450. type: array
  451. required:
  452. - key
  453. - operator
  454. type: object
  455. type: array
  456. matchLabels:
  457. additionalProperties:
  458. type: string
  459. description: matchLabels is a map of {key,value} pairs. A single
  460. {key,value} in the matchLabels map is equivalent to an element
  461. of matchExpressions, whose key field is "key", the operator
  462. is "In", and the values array contains only "value". The requirements
  463. are ANDed.
  464. type: object
  465. type: object
  466. type: array
  467. ipAddressPools:
  468. description: The list of IPAddressPools to advertise via this advertisement,
  469. selected by name.
  470. items:
  471. type: string
  472. type: array
  473. localPref:
  474. description: The BGP LOCAL_PREF attribute which is used by BGP best
  475. path algorithm, Path with higher localpref is preferred over one
  476. with lower localpref.
  477. format: int32
  478. type: integer
  479. nodeSelectors:
  480. description: NodeSelectors allows to limit the nodes to announce as
  481. next hops for the LoadBalancer IP. When empty, all the nodes having are
  482. announced as next hops.
  483. items:
  484. description: A label selector is a label query over a set of resources.
  485. The result of matchLabels and matchExpressions are ANDed. An empty
  486. label selector matches all objects. A null label selector matches
  487. no objects.
  488. properties:
  489. matchExpressions:
  490. description: matchExpressions is a list of label selector requirements.
  491. The requirements are ANDed.
  492. items:
  493. description: A label selector requirement is a selector that
  494. contains values, a key, and an operator that relates the
  495. key and values.
  496. properties:
  497. key:
  498. description: key is the label key that the selector applies
  499. to.
  500. type: string
  501. operator:
  502. description: operator represents a key's relationship
  503. to a set of values. Valid operators are In, NotIn, Exists
  504. and DoesNotExist.
  505. type: string
  506. values:
  507. description: values is an array of string values. If the
  508. operator is In or NotIn, the values array must be non-empty.
  509. If the operator is Exists or DoesNotExist, the values
  510. array must be empty. This array is replaced during a
  511. strategic merge patch.
  512. items:
  513. type: string
  514. type: array
  515. required:
  516. - key
  517. - operator
  518. type: object
  519. type: array
  520. matchLabels:
  521. additionalProperties:
  522. type: string
  523. description: matchLabels is a map of {key,value} pairs. A single
  524. {key,value} in the matchLabels map is equivalent to an element
  525. of matchExpressions, whose key field is "key", the operator
  526. is "In", and the values array contains only "value". The requirements
  527. are ANDed.
  528. type: object
  529. type: object
  530. type: array
  531. peers:
  532. description: Peers limits the bgppeer to advertise the ips of the
  533. selected pools to. When empty, the loadbalancer IP is announced
  534. to all the BGPPeers configured.
  535. items:
  536. type: string
  537. type: array
  538. type: object
  539. status:
  540. description: BGPAdvertisementStatus defines the observed state of BGPAdvertisement.
  541. type: object
  542. type: object
  543. served: true
  544. storage: true
  545. subresources:
  546. status: {}
  547. status:
  548. acceptedNames:
  549. kind: ""
  550. plural: ""
  551. conditions: []
  552. storedVersions: []
  553. ---
  554. # Source: metallb/charts/crds/templates/crds.yaml
  555. apiVersion: apiextensions.k8s.io/v1
  556. kind: CustomResourceDefinition
  557. metadata:
  558. annotations:
  559. controller-gen.kubebuilder.io/version: v0.7.0
  560. creationTimestamp: null
  561. name: bgppeers.metallb.io
  562. spec:
  563. group: metallb.io
  564. names:
  565. kind: BGPPeer
  566. listKind: BGPPeerList
  567. plural: bgppeers
  568. singular: bgppeer
  569. scope: Namespaced
  570. conversion:
  571. strategy: Webhook
  572. webhook:
  573. conversionReviewVersions: ["v1beta1", "v1beta2"]
  574. clientConfig:
  575. # this is a valid pem format, otherwise the apiserver will reject the deletion of the crds
  576. # with "unable to parse bytes as PEM block", The controller will patch it with the right content after it starts
  577. caBundle: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tDQpNSUlGWlRDQ0EwMmdBd0lCQWdJVU5GRW1XcTM3MVpKdGkrMmlSQzk1WmpBV1MxZ3dEUVlKS29aSWh2Y05BUUVMDQpCUUF3UWpFTE1Ba0dBMVVFQmhNQ1dGZ3hGVEFUQmdOVkJBY01ERVJsWm1GMWJIUWdRMmwwZVRFY01Cb0dBMVVFDQpDZ3dUUkdWbVlYVnNkQ0JEYjIxd1lXNTVJRXgwWkRBZUZ3MHlNakEzTVRrd09UTXlNek5hRncweU1qQTRNVGd3DQpPVE15TXpOYU1FSXhDekFKQmdOVkJBWVRBbGhZTVJVd0V3WURWUVFIREF4RVpXWmhkV3gwSUVOcGRIa3hIREFhDQpCZ05WQkFvTUUwUmxabUYxYkhRZ1EyOXRjR0Z1ZVNCTWRHUXdnZ0lpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElDDQpEd0F3Z2dJS0FvSUNBUUNxVFpxMWZRcC9vYkdlenhES0o3OVB3Ny94azJwellualNzMlkzb1ZYSm5sRmM4YjVlDQpma2ZZQnY2bndscW1keW5PL2phWFBaQmRQSS82aFdOUDBkdVhadEtWU0NCUUpyZzEyOGNXb3F0MGNTN3pLb1VpDQpvcU1tQ0QvRXVBeFFNZjhRZDF2c1gvVllkZ0poVTZBRXJLZEpIaXpFOUJtUkNkTDBGMW1OVW55Rk82UnRtWFZUDQpidkxsTDVYeTc2R0FaQVBLOFB4aVlDa0NtbDdxN0VnTWNiOXlLWldCYmlxQ3VkTXE5TGJLNmdKNzF6YkZnSXV4DQo1L1pXK2JraTB2RlplWk9ZODUxb1psckFUNzJvMDI4NHNTWW9uN0pHZVZkY3NoUnh5R1VpSFpSTzdkaXZVTDVTDQpmM2JmSDFYbWY1ZDQzT0NWTWRuUUV2NWVaOG8zeWVLa3ZrbkZQUGVJMU9BbjdGbDlFRVNNR2dhOGFaSG1URSttDQpsLzlMSmdDYjBnQmtPT0M0WnV4bWh2aERKV1EzWnJCS3pMQlNUZXN0NWlLNVlwcXRWVVk2THRyRW9FelVTK1lsDQpwWndXY2VQWHlHeHM5ZURsR3lNVmQraW15Y3NTU1UvVno2Mmx6MnZCS21NTXBkYldDQWhud0RsRTVqU2dyMjRRDQp0eGNXLys2N3d5KzhuQlI3UXdqVTFITndVRjBzeERWdEwrZ1NHVERnSEVZSlhZelYvT05zMy94TkpoVFNPSkxNDQpoeXNVdyttaGdackdhbUdXcHVIVU1DUitvTWJzMTc1UkcrQjJnUFFHVytPTjJnUTRyOXN2b0ZBNHBBQm8xd1dLDQpRYjRhY3pmeVVscElBOVFoSmFsZEY3S3dPSHVlV3gwRUNrNXg0T2tvVDBvWVp0dzFiR0JjRGtaSmF3SURBUUFCDQpvMU13VVRBZEJnTlZIUTRFRmdRVW90UlNIUm9IWTEyRFZ4R0NCdEhpb1g2ZmVFQXdId1lEVlIwakJCZ3dGb0FVDQpvdFJTSFJvSFkxMkRWeEdDQnRIaW9YNmZlRUF3RHdZRFZSMFRBUUgvQkFVd0F3RUIvekFOQmdrcWhraUc5dzBCDQpBUXNGQUFPQ0FnRUFSbkpsWWRjMTFHd0VxWnh6RDF2R3BDR2pDN2VWTlQ3aVY1d3IybXlybHdPYi9aUWFEa0xYDQpvVStaOVVXT1VlSXJTdzUydDdmQUpvVVAwSm5iYkMveVIrU1lqUGhvUXNiVHduOTc2ZldBWTduM3FMOXhCd1Y0DQphek41OXNjeUp0dlhMeUtOL2N5ak1ReDRLajBIMFg0bWJ6bzVZNUtzWWtYVU0vOEFPdWZMcEd0S1NGVGgrSEFDDQpab1Q5YnZHS25adnNHd0tYZFF0Wnh0akhaUjVqK3U3ZGtQOTJBT051RFNabS8rWVV4b2tBK09JbzdSR3BwSHNXDQo1ZTdNY0FTVXRtb1FORXd6dVFoVkJaRWQ1OGtKYjUrV0VWbGNzanlXNnRTbzErZ25tTWNqR1BsMWgxR2hVbjV4DQpFY0lWRnBIWXM5YWo1NmpBSjk1MVQvZjhMaWxmTlVnanBLQ0c1bnl0SUt3emxhOHNtdGlPdm1UNEpYbXBwSkI2DQo4bmdHRVluVjUrUTYwWFJ2OEhSSGp1VG9CRHVhaERrVDA2R1JGODU1d09FR2V4bkZpMXZYWUxLVllWb1V2MXRKDQo4dVdUR1pwNllDSVJldlBqbzg5ZytWTlJSaVFYUThJd0dybXE5c0RoVTlqTjA0SjdVL1RvRDFpNHE3VnlsRUc5DQorV1VGNkNLaEdBeTJIaEhwVncyTGFoOS9lUzdZMUZ1YURrWmhPZG1laG1BOCtqdHNZamJadnR5Mm1SWlF0UUZzDQpUU1VUUjREbUR2bVVPRVRmeStpRHdzK2RkWXVNTnJGeVVYV2dkMnpBQU4ydVl1UHFGY2pRcFNPODFzVTJTU3R3DQoxVzAyeUtYOGJEYmZFdjBzbUh3UzliQnFlSGo5NEM1Mjg0YXpsdTBmaUdpTm1OUEM4ckJLRmhBPQ0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQ==
  578. service:
  579. namespace: default
  580. name: metallb-webhook-service
  581. path: /convert
  582. versions:
  583. - name: v1beta1
  584. schema:
  585. openAPIV3Schema:
  586. description: BGPPeer is the Schema for the peers API.
  587. properties:
  588. apiVersion:
  589. description: 'APIVersion defines the versioned schema of this representation
  590. of an object. Servers should convert recognized schemas to the latest
  591. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  592. type: string
  593. kind:
  594. description: 'Kind is a string value representing the REST resource this
  595. object represents. Servers may infer this from the endpoint the client
  596. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  597. type: string
  598. metadata:
  599. type: object
  600. spec:
  601. description: BGPPeerSpec defines the desired state of Peer.
  602. properties:
  603. bfdProfile:
  604. type: string
  605. ebgpMultiHop:
  606. description: EBGP peer is multi-hops away
  607. type: boolean
  608. holdTime:
  609. description: Requested BGP hold time, per RFC4271.
  610. type: string
  611. keepaliveTime:
  612. description: Requested BGP keepalive time, per RFC4271.
  613. type: string
  614. myASN:
  615. description: AS number to use for the local end of the session.
  616. format: int32
  617. maximum: 4294967295
  618. minimum: 0
  619. type: integer
  620. nodeSelectors:
  621. description: Only connect to this peer on nodes that match one of
  622. these selectors.
  623. items:
  624. properties:
  625. matchExpressions:
  626. items:
  627. properties:
  628. key:
  629. type: string
  630. operator:
  631. type: string
  632. values:
  633. items:
  634. type: string
  635. minItems: 1
  636. type: array
  637. required:
  638. - key
  639. - operator
  640. - values
  641. type: object
  642. type: array
  643. matchLabels:
  644. additionalProperties:
  645. type: string
  646. type: object
  647. type: object
  648. type: array
  649. password:
  650. description: Authentication password for routers enforcing TCP MD5
  651. authenticated sessions
  652. type: string
  653. peerASN:
  654. description: AS number to expect from the remote end of the session.
  655. format: int32
  656. maximum: 4294967295
  657. minimum: 0
  658. type: integer
  659. peerAddress:
  660. description: Address to dial when establishing the session.
  661. type: string
  662. peerPort:
  663. description: Port to dial when establishing the session.
  664. maximum: 16384
  665. minimum: 0
  666. type: integer
  667. routerID:
  668. description: BGP router ID to advertise to the peer
  669. type: string
  670. sourceAddress:
  671. description: Source address to use when establishing the session.
  672. type: string
  673. required:
  674. - myASN
  675. - peerASN
  676. - peerAddress
  677. type: object
  678. status:
  679. description: BGPPeerStatus defines the observed state of Peer.
  680. type: object
  681. type: object
  682. served: true
  683. storage: false
  684. subresources:
  685. status: {}
  686. - name: v1beta2
  687. schema:
  688. openAPIV3Schema:
  689. description: BGPPeer is the Schema for the peers API.
  690. properties:
  691. apiVersion:
  692. description: 'APIVersion defines the versioned schema of this representation
  693. of an object. Servers should convert recognized schemas to the latest
  694. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  695. type: string
  696. kind:
  697. description: 'Kind is a string value representing the REST resource this
  698. object represents. Servers may infer this from the endpoint the client
  699. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  700. type: string
  701. metadata:
  702. type: object
  703. spec:
  704. description: BGPPeerSpec defines the desired state of Peer.
  705. properties:
  706. bfdProfile:
  707. description: The name of the BFD Profile to be used for the BFD session
  708. associated to the BGP session. If not set, the BFD session won't
  709. be set up.
  710. type: string
  711. ebgpMultiHop:
  712. description: To set if the BGPPeer is multi-hops away. Needed for
  713. FRR mode only.
  714. type: boolean
  715. holdTime:
  716. description: Requested BGP hold time, per RFC4271.
  717. type: string
  718. keepaliveTime:
  719. description: Requested BGP keepalive time, per RFC4271.
  720. type: string
  721. myASN:
  722. description: AS number to use for the local end of the session.
  723. format: int32
  724. maximum: 4294967295
  725. minimum: 0
  726. type: integer
  727. nodeSelectors:
  728. description: Only connect to this peer on nodes that match one of
  729. these selectors.
  730. items:
  731. description: A label selector is a label query over a set of resources.
  732. The result of matchLabels and matchExpressions are ANDed. An empty
  733. label selector matches all objects. A null label selector matches
  734. no objects.
  735. properties:
  736. matchExpressions:
  737. description: matchExpressions is a list of label selector requirements.
  738. The requirements are ANDed.
  739. items:
  740. description: A label selector requirement is a selector that
  741. contains values, a key, and an operator that relates the
  742. key and values.
  743. properties:
  744. key:
  745. description: key is the label key that the selector applies
  746. to.
  747. type: string
  748. operator:
  749. description: operator represents a key's relationship
  750. to a set of values. Valid operators are In, NotIn, Exists
  751. and DoesNotExist.
  752. type: string
  753. values:
  754. description: values is an array of string values. If the
  755. operator is In or NotIn, the values array must be non-empty.
  756. If the operator is Exists or DoesNotExist, the values
  757. array must be empty. This array is replaced during a
  758. strategic merge patch.
  759. items:
  760. type: string
  761. type: array
  762. required:
  763. - key
  764. - operator
  765. type: object
  766. type: array
  767. matchLabels:
  768. additionalProperties:
  769. type: string
  770. description: matchLabels is a map of {key,value} pairs. A single
  771. {key,value} in the matchLabels map is equivalent to an element
  772. of matchExpressions, whose key field is "key", the operator
  773. is "In", and the values array contains only "value". The requirements
  774. are ANDed.
  775. type: object
  776. type: object
  777. type: array
  778. password:
  779. description: Authentication password for routers enforcing TCP MD5
  780. authenticated sessions
  781. type: string
  782. passwordSecret:
  783. description: passwordSecret is name of the authentication secret for
  784. BGP Peer. the secret must be of type "kubernetes.io/basic-auth",
  785. and created in the same namespace as the MetalLB deployment. The
  786. password is stored in the secret as the key "password".
  787. properties:
  788. name:
  789. description: Name is unique within a namespace to reference a
  790. secret resource.
  791. type: string
  792. namespace:
  793. description: Namespace defines the space within which the secret
  794. name must be unique.
  795. type: string
  796. type: object
  797. peerASN:
  798. description: AS number to expect from the remote end of the session.
  799. format: int32
  800. maximum: 4294967295
  801. minimum: 0
  802. type: integer
  803. peerAddress:
  804. description: Address to dial when establishing the session.
  805. type: string
  806. peerPort:
  807. default: 179
  808. description: Port to dial when establishing the session.
  809. maximum: 16384
  810. minimum: 0
  811. type: integer
  812. routerID:
  813. description: BGP router ID to advertise to the peer
  814. type: string
  815. sourceAddress:
  816. description: Source address to use when establishing the session.
  817. type: string
  818. required:
  819. - myASN
  820. - peerASN
  821. - peerAddress
  822. type: object
  823. status:
  824. description: BGPPeerStatus defines the observed state of Peer.
  825. type: object
  826. type: object
  827. served: true
  828. storage: true
  829. subresources:
  830. status: {}
  831. status:
  832. acceptedNames:
  833. kind: ""
  834. plural: ""
  835. conditions: []
  836. storedVersions: []
  837. ---
  838. # Source: metallb/charts/crds/templates/crds.yaml
  839. ---
  840. apiVersion: apiextensions.k8s.io/v1
  841. kind: CustomResourceDefinition
  842. metadata:
  843. annotations:
  844. controller-gen.kubebuilder.io/version: v0.7.0
  845. creationTimestamp: null
  846. name: ipaddresspools.metallb.io
  847. spec:
  848. group: metallb.io
  849. names:
  850. kind: IPAddressPool
  851. listKind: IPAddressPoolList
  852. plural: ipaddresspools
  853. singular: ipaddresspool
  854. scope: Namespaced
  855. versions:
  856. - name: v1beta1
  857. schema:
  858. openAPIV3Schema:
  859. description: IPAddressPool represents a pool of IP addresses that can be allocated
  860. to LoadBalancer services.
  861. properties:
  862. apiVersion:
  863. description: 'APIVersion defines the versioned schema of this representation
  864. of an object. Servers should convert recognized schemas to the latest
  865. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  866. type: string
  867. kind:
  868. description: 'Kind is a string value representing the REST resource this
  869. object represents. Servers may infer this from the endpoint the client
  870. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  871. type: string
  872. metadata:
  873. type: object
  874. spec:
  875. description: IPAddressPoolSpec defines the desired state of IPAddressPool.
  876. properties:
  877. addresses:
  878. description: A list of IP address ranges over which MetalLB has authority.
  879. You can list multiple ranges in a single pool, they will all share
  880. the same settings. Each range can be either a CIDR prefix, or an
  881. explicit start-end range of IPs.
  882. items:
  883. type: string
  884. type: array
  885. autoAssign:
  886. default: true
  887. description: AutoAssign flag used to prevent MetallB from automatic
  888. allocation for a pool.
  889. type: boolean
  890. avoidBuggyIPs:
  891. default: false
  892. description: AvoidBuggyIPs prevents addresses ending with .0 and .255
  893. to be used by a pool.
  894. type: boolean
  895. required:
  896. - addresses
  897. type: object
  898. status:
  899. description: IPAddressPoolStatus defines the observed state of IPAddressPool.
  900. type: object
  901. required:
  902. - spec
  903. type: object
  904. served: true
  905. storage: true
  906. subresources:
  907. status: {}
  908. status:
  909. acceptedNames:
  910. kind: ""
  911. plural: ""
  912. conditions: []
  913. storedVersions: []
  914. ---
  915. # Source: metallb/charts/crds/templates/crds.yaml
  916. apiVersion: apiextensions.k8s.io/v1
  917. kind: CustomResourceDefinition
  918. metadata:
  919. annotations:
  920. controller-gen.kubebuilder.io/version: v0.7.0
  921. creationTimestamp: null
  922. name: l2advertisements.metallb.io
  923. spec:
  924. group: metallb.io
  925. names:
  926. kind: L2Advertisement
  927. listKind: L2AdvertisementList
  928. plural: l2advertisements
  929. singular: l2advertisement
  930. scope: Namespaced
  931. versions:
  932. - name: v1beta1
  933. schema:
  934. openAPIV3Schema:
  935. description: L2Advertisement allows to advertise the LoadBalancer IPs provided
  936. by the selected pools via L2.
  937. properties:
  938. apiVersion:
  939. description: 'APIVersion defines the versioned schema of this representation
  940. of an object. Servers should convert recognized schemas to the latest
  941. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  942. type: string
  943. kind:
  944. description: 'Kind is a string value representing the REST resource this
  945. object represents. Servers may infer this from the endpoint the client
  946. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  947. type: string
  948. metadata:
  949. type: object
  950. spec:
  951. description: L2AdvertisementSpec defines the desired state of L2Advertisement.
  952. properties:
  953. interfaces:
  954. description: A list of interfaces to announce from. The LB IP will
  955. be announced only from these interfaces. If the field is not set,
  956. we advertise from all the interfaces on the host.
  957. items:
  958. type: string
  959. type: array
  960. ipAddressPoolSelectors:
  961. description: A selector for the IPAddressPools which would get advertised
  962. via this advertisement. If no IPAddressPool is selected by this
  963. or by the list, the advertisement is applied to all the IPAddressPools.
  964. items:
  965. description: A label selector is a label query over a set of resources.
  966. The result of matchLabels and matchExpressions are ANDed. An empty
  967. label selector matches all objects. A null label selector matches
  968. no objects.
  969. properties:
  970. matchExpressions:
  971. description: matchExpressions is a list of label selector requirements.
  972. The requirements are ANDed.
  973. items:
  974. description: A label selector requirement is a selector that
  975. contains values, a key, and an operator that relates the
  976. key and values.
  977. properties:
  978. key:
  979. description: key is the label key that the selector applies
  980. to.
  981. type: string
  982. operator:
  983. description: operator represents a key's relationship
  984. to a set of values. Valid operators are In, NotIn, Exists
  985. and DoesNotExist.
  986. type: string
  987. values:
  988. description: values is an array of string values. If the
  989. operator is In or NotIn, the values array must be non-empty.
  990. If the operator is Exists or DoesNotExist, the values
  991. array must be empty. This array is replaced during a
  992. strategic merge patch.
  993. items:
  994. type: string
  995. type: array
  996. required:
  997. - key
  998. - operator
  999. type: object
  1000. type: array
  1001. matchLabels:
  1002. additionalProperties:
  1003. type: string
  1004. description: matchLabels is a map of {key,value} pairs. A single
  1005. {key,value} in the matchLabels map is equivalent to an element
  1006. of matchExpressions, whose key field is "key", the operator
  1007. is "In", and the values array contains only "value". The requirements
  1008. are ANDed.
  1009. type: object
  1010. type: object
  1011. type: array
  1012. ipAddressPools:
  1013. description: The list of IPAddressPools to advertise via this advertisement,
  1014. selected by name.
  1015. items:
  1016. type: string
  1017. type: array
  1018. nodeSelectors:
  1019. description: NodeSelectors allows to limit the nodes to announce as
  1020. next hops for the LoadBalancer IP. When empty, all the nodes having are
  1021. announced as next hops.
  1022. items:
  1023. description: A label selector is a label query over a set of resources.
  1024. The result of matchLabels and matchExpressions are ANDed. An empty
  1025. label selector matches all objects. A null label selector matches
  1026. no objects.
  1027. properties:
  1028. matchExpressions:
  1029. description: matchExpressions is a list of label selector requirements.
  1030. The requirements are ANDed.
  1031. items:
  1032. description: A label selector requirement is a selector that
  1033. contains values, a key, and an operator that relates the
  1034. key and values.
  1035. properties:
  1036. key:
  1037. description: key is the label key that the selector applies
  1038. to.
  1039. type: string
  1040. operator:
  1041. description: operator represents a key's relationship
  1042. to a set of values. Valid operators are In, NotIn, Exists
  1043. and DoesNotExist.
  1044. type: string
  1045. values:
  1046. description: values is an array of string values. If the
  1047. operator is In or NotIn, the values array must be non-empty.
  1048. If the operator is Exists or DoesNotExist, the values
  1049. array must be empty. This array is replaced during a
  1050. strategic merge patch.
  1051. items:
  1052. type: string
  1053. type: array
  1054. required:
  1055. - key
  1056. - operator
  1057. type: object
  1058. type: array
  1059. matchLabels:
  1060. additionalProperties:
  1061. type: string
  1062. description: matchLabels is a map of {key,value} pairs. A single
  1063. {key,value} in the matchLabels map is equivalent to an element
  1064. of matchExpressions, whose key field is "key", the operator
  1065. is "In", and the values array contains only "value". The requirements
  1066. are ANDed.
  1067. type: object
  1068. type: object
  1069. type: array
  1070. type: object
  1071. status:
  1072. description: L2AdvertisementStatus defines the observed state of L2Advertisement.
  1073. type: object
  1074. type: object
  1075. served: true
  1076. storage: true
  1077. subresources:
  1078. status: {}
  1079. status:
  1080. acceptedNames:
  1081. kind: ""
  1082. plural: ""
  1083. conditions: []
  1084. storedVersions: []
  1085. ---
  1086. # Source: metallb/charts/crds/templates/crds.yaml
  1087. apiVersion: apiextensions.k8s.io/v1
  1088. kind: CustomResourceDefinition
  1089. metadata:
  1090. annotations:
  1091. controller-gen.kubebuilder.io/version: v0.7.0
  1092. creationTimestamp: null
  1093. name: communities.metallb.io
  1094. spec:
  1095. group: metallb.io
  1096. names:
  1097. kind: Community
  1098. listKind: CommunityList
  1099. plural: communities
  1100. singular: community
  1101. scope: Namespaced
  1102. versions:
  1103. - name: v1beta1
  1104. schema:
  1105. openAPIV3Schema:
  1106. description: Community is a collection of aliases for communities. Users can
  1107. define named aliases to be used in the BGPPeer CRD.
  1108. properties:
  1109. apiVersion:
  1110. description: 'APIVersion defines the versioned schema of this representation
  1111. of an object. Servers should convert recognized schemas to the latest
  1112. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1113. type: string
  1114. kind:
  1115. description: 'Kind is a string value representing the REST resource this
  1116. object represents. Servers may infer this from the endpoint the client
  1117. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1118. type: string
  1119. metadata:
  1120. type: object
  1121. spec:
  1122. description: CommunitySpec defines the desired state of Community.
  1123. properties:
  1124. communities:
  1125. items:
  1126. properties:
  1127. name:
  1128. description: The name of the alias for the community.
  1129. type: string
  1130. value:
  1131. description: The BGP community value corresponding to the given
  1132. name.
  1133. type: string
  1134. type: object
  1135. type: array
  1136. type: object
  1137. status:
  1138. description: CommunityStatus defines the observed state of Community.
  1139. type: object
  1140. type: object
  1141. served: true
  1142. storage: true
  1143. subresources:
  1144. status: {}
  1145. status:
  1146. acceptedNames:
  1147. kind: ""
  1148. plural: ""
  1149. conditions: []
  1150. storedVersions: []
  1151. ---
  1152. # Source: metallb/templates/rbac.yaml
  1153. apiVersion: rbac.authorization.k8s.io/v1
  1154. kind: ClusterRole
  1155. metadata:
  1156. name: metallb:controller
  1157. labels:
  1158. helm.sh/chart: metallb-0.13.7
  1159. app.kubernetes.io/name: metallb
  1160. app.kubernetes.io/instance: metallb
  1161. app.kubernetes.io/version: "v0.13.7"
  1162. app.kubernetes.io/managed-by: Helm
  1163. rules:
  1164. - apiGroups: [""]
  1165. resources: ["services"]
  1166. verbs: ["get", "list", "watch"]
  1167. - apiGroups: [""]
  1168. resources: ["services/status"]
  1169. verbs: ["update"]
  1170. - apiGroups: [""]
  1171. resources: ["events"]
  1172. verbs: ["create", "patch"]
  1173. - apiGroups: ["admissionregistration.k8s.io"]
  1174. resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
  1175. verbs: ["create", "delete", "get", "list", "patch", "update", "watch"]
  1176. - apiGroups: ["apiextensions.k8s.io"]
  1177. resources: ["customresourcedefinitions"]
  1178. verbs: ["create", "delete", "get", "list", "patch", "update", "watch"]
  1179. ---
  1180. # Source: metallb/templates/rbac.yaml
  1181. apiVersion: rbac.authorization.k8s.io/v1
  1182. kind: ClusterRole
  1183. metadata:
  1184. name: metallb:speaker
  1185. labels:
  1186. helm.sh/chart: metallb-0.13.7
  1187. app.kubernetes.io/name: metallb
  1188. app.kubernetes.io/instance: metallb
  1189. app.kubernetes.io/version: "v0.13.7"
  1190. app.kubernetes.io/managed-by: Helm
  1191. rules:
  1192. - apiGroups: [""]
  1193. resources: ["services", "endpoints", "nodes"]
  1194. verbs: ["get", "list", "watch"]
  1195. - apiGroups: ["discovery.k8s.io"]
  1196. resources: ["endpointslices"]
  1197. verbs: ["get", "list", "watch"]
  1198. - apiGroups: [""]
  1199. resources: ["events"]
  1200. verbs: ["create", "patch"]
  1201. ---
  1202. # Source: metallb/templates/rbac.yaml
  1203. apiVersion: rbac.authorization.k8s.io/v1
  1204. kind: ClusterRoleBinding
  1205. metadata:
  1206. name: metallb:controller
  1207. labels:
  1208. helm.sh/chart: metallb-0.13.7
  1209. app.kubernetes.io/name: metallb
  1210. app.kubernetes.io/instance: metallb
  1211. app.kubernetes.io/version: "v0.13.7"
  1212. app.kubernetes.io/managed-by: Helm
  1213. subjects:
  1214. - kind: ServiceAccount
  1215. name: metallb-controller
  1216. namespace: default
  1217. roleRef:
  1218. apiGroup: rbac.authorization.k8s.io
  1219. kind: ClusterRole
  1220. name: metallb:controller
  1221. ---
  1222. # Source: metallb/templates/rbac.yaml
  1223. apiVersion: rbac.authorization.k8s.io/v1
  1224. kind: ClusterRoleBinding
  1225. metadata:
  1226. name: metallb:speaker
  1227. labels:
  1228. helm.sh/chart: metallb-0.13.7
  1229. app.kubernetes.io/name: metallb
  1230. app.kubernetes.io/instance: metallb
  1231. app.kubernetes.io/version: "v0.13.7"
  1232. app.kubernetes.io/managed-by: Helm
  1233. subjects:
  1234. - kind: ServiceAccount
  1235. name: metallb-speaker
  1236. namespace: default
  1237. roleRef:
  1238. apiGroup: rbac.authorization.k8s.io
  1239. kind: ClusterRole
  1240. name: metallb:speaker
  1241. ---
  1242. # Source: metallb/templates/rbac.yaml
  1243. apiVersion: rbac.authorization.k8s.io/v1
  1244. kind: Role
  1245. metadata:
  1246. name: metallb-pod-lister
  1247. labels:
  1248. helm.sh/chart: metallb-0.13.7
  1249. app.kubernetes.io/name: metallb
  1250. app.kubernetes.io/instance: metallb
  1251. app.kubernetes.io/version: "v0.13.7"
  1252. app.kubernetes.io/managed-by: Helm
  1253. rules:
  1254. - apiGroups: [""]
  1255. resources: ["pods"]
  1256. verbs: ["list"]
  1257. - apiGroups: [""]
  1258. resources: ["secrets"]
  1259. verbs: ["get", "list", "watch"]
  1260. - apiGroups: ["metallb.io"]
  1261. resources: ["addresspools"]
  1262. verbs: ["get", "list", "watch"]
  1263. - apiGroups: ["metallb.io"]
  1264. resources: ["bfdprofiles"]
  1265. verbs: ["get", "list", "watch"]
  1266. - apiGroups: ["metallb.io"]
  1267. resources: ["bgppeers"]
  1268. verbs: ["get", "list", "watch"]
  1269. - apiGroups: ["metallb.io"]
  1270. resources: ["l2advertisements"]
  1271. verbs: ["get", "list", "watch"]
  1272. - apiGroups: ["metallb.io"]
  1273. resources: ["bgpadvertisements"]
  1274. verbs: ["get", "list", "watch"]
  1275. - apiGroups: ["metallb.io"]
  1276. resources: ["ipaddresspools"]
  1277. verbs: ["get", "list", "watch"]
  1278. - apiGroups: ["metallb.io"]
  1279. resources: ["communities"]
  1280. verbs: ["get", "list", "watch"]
  1281. ---
  1282. # Source: metallb/templates/rbac.yaml
  1283. apiVersion: rbac.authorization.k8s.io/v1
  1284. kind: Role
  1285. metadata:
  1286. name: metallb-controller
  1287. labels:
  1288. helm.sh/chart: metallb-0.13.7
  1289. app.kubernetes.io/name: metallb
  1290. app.kubernetes.io/instance: metallb
  1291. app.kubernetes.io/version: "v0.13.7"
  1292. app.kubernetes.io/managed-by: Helm
  1293. rules:
  1294. - apiGroups: [""]
  1295. resources: ["secrets"]
  1296. verbs: ["create", "get", "list", "watch"]
  1297. - apiGroups: [""]
  1298. resources: ["secrets"]
  1299. resourceNames: ["metallb-memberlist"]
  1300. verbs: ["list"]
  1301. - apiGroups: ["apps"]
  1302. resources: ["deployments"]
  1303. resourceNames: ["metallb-controller"]
  1304. verbs: ["get"]
  1305. - apiGroups: [""]
  1306. resources: ["secrets"]
  1307. verbs: ["create", "delete", "get", "list", "patch", "update", "watch"]
  1308. - apiGroups: ["metallb.io"]
  1309. resources: ["addresspools"]
  1310. verbs: ["get", "list", "watch"]
  1311. - apiGroups: ["metallb.io"]
  1312. resources: ["ipaddresspools"]
  1313. verbs: ["get", "list", "watch"]
  1314. - apiGroups: ["metallb.io"]
  1315. resources: ["bgppeers"]
  1316. verbs: ["get", "list"]
  1317. - apiGroups: ["metallb.io"]
  1318. resources: ["bgpadvertisements"]
  1319. verbs: ["get", "list"]
  1320. - apiGroups: ["metallb.io"]
  1321. resources: ["l2advertisements"]
  1322. verbs: ["get", "list"]
  1323. - apiGroups: ["metallb.io"]
  1324. resources: ["communities"]
  1325. verbs: ["get", "list","watch"]
  1326. - apiGroups: ["metallb.io"]
  1327. resources: ["bfdprofiles"]
  1328. verbs: ["get", "list","watch"]
  1329. ---
  1330. # Source: metallb/templates/rbac.yaml
  1331. apiVersion: rbac.authorization.k8s.io/v1
  1332. kind: RoleBinding
  1333. metadata:
  1334. name: metallb-pod-lister
  1335. labels:
  1336. helm.sh/chart: metallb-0.13.7
  1337. app.kubernetes.io/name: metallb
  1338. app.kubernetes.io/instance: metallb
  1339. app.kubernetes.io/version: "v0.13.7"
  1340. app.kubernetes.io/managed-by: Helm
  1341. roleRef:
  1342. apiGroup: rbac.authorization.k8s.io
  1343. kind: Role
  1344. name: metallb-pod-lister
  1345. subjects:
  1346. - kind: ServiceAccount
  1347. name: metallb-speaker
  1348. ---
  1349. # Source: metallb/templates/rbac.yaml
  1350. apiVersion: rbac.authorization.k8s.io/v1
  1351. kind: RoleBinding
  1352. metadata:
  1353. name: metallb-controller
  1354. labels:
  1355. helm.sh/chart: metallb-0.13.7
  1356. app.kubernetes.io/name: metallb
  1357. app.kubernetes.io/instance: metallb
  1358. app.kubernetes.io/version: "v0.13.7"
  1359. app.kubernetes.io/managed-by: Helm
  1360. roleRef:
  1361. apiGroup: rbac.authorization.k8s.io
  1362. kind: Role
  1363. name: metallb-controller
  1364. subjects:
  1365. - kind: ServiceAccount
  1366. name: metallb-controller
  1367. ---
  1368. # Source: metallb/templates/webhooks.yaml
  1369. apiVersion: v1
  1370. kind: Service
  1371. metadata:
  1372. name: metallb-webhook-service
  1373. labels:
  1374. helm.sh/chart: metallb-0.13.7
  1375. app.kubernetes.io/name: metallb
  1376. app.kubernetes.io/instance: metallb
  1377. app.kubernetes.io/version: "v0.13.7"
  1378. app.kubernetes.io/managed-by: Helm
  1379. spec:
  1380. ports:
  1381. - port: 443
  1382. targetPort: 9443
  1383. selector:
  1384. app.kubernetes.io/name: metallb
  1385. app.kubernetes.io/instance: metallb
  1386. app.kubernetes.io/component: controller
  1387. ---
  1388. # Source: metallb/templates/speaker.yaml
  1389. apiVersion: apps/v1
  1390. kind: DaemonSet
  1391. metadata:
  1392. name: metallb-speaker
  1393. labels:
  1394. helm.sh/chart: metallb-0.13.7
  1395. app.kubernetes.io/name: metallb
  1396. app.kubernetes.io/instance: metallb
  1397. app.kubernetes.io/version: "v0.13.7"
  1398. app.kubernetes.io/managed-by: Helm
  1399. app.kubernetes.io/component: speaker
  1400. spec:
  1401. updateStrategy:
  1402. type: RollingUpdate
  1403. selector:
  1404. matchLabels:
  1405. app.kubernetes.io/name: metallb
  1406. app.kubernetes.io/instance: metallb
  1407. app.kubernetes.io/component: speaker
  1408. template:
  1409. metadata:
  1410. labels:
  1411. app.kubernetes.io/name: metallb
  1412. app.kubernetes.io/instance: metallb
  1413. app.kubernetes.io/component: speaker
  1414. spec:
  1415. serviceAccountName: metallb-speaker
  1416. terminationGracePeriodSeconds: 0
  1417. hostNetwork: true
  1418. volumes:
  1419. containers:
  1420. - name: speaker
  1421. image: quay.io/metallb/speaker:v0.13.7
  1422. args:
  1423. - --port=7472
  1424. - --log-level=info
  1425. env:
  1426. - name: METALLB_NODE_NAME
  1427. valueFrom:
  1428. fieldRef:
  1429. fieldPath: spec.nodeName
  1430. - name: METALLB_HOST
  1431. valueFrom:
  1432. fieldRef:
  1433. fieldPath: status.hostIP
  1434. - name: METALLB_ML_BIND_ADDR
  1435. valueFrom:
  1436. fieldRef:
  1437. fieldPath: status.podIP
  1438. - name: METALLB_ML_LABELS
  1439. value: "app.kubernetes.io/name=metallb,app.kubernetes.io/component=speaker"
  1440. - name: METALLB_ML_BIND_PORT
  1441. value: "7946"
  1442. - name: METALLB_ML_SECRET_KEY
  1443. valueFrom:
  1444. secretKeyRef:
  1445. name: metallb-memberlist
  1446. key: secretkey
  1447. ports:
  1448. - name: monitoring
  1449. containerPort: 7472
  1450. - name: memberlist-tcp
  1451. containerPort: 7946
  1452. protocol: TCP
  1453. - name: memberlist-udp
  1454. containerPort: 7946
  1455. protocol: UDP
  1456. livenessProbe:
  1457. httpGet:
  1458. path: /metrics
  1459. port: monitoring
  1460. initialDelaySeconds: 10
  1461. periodSeconds: 10
  1462. timeoutSeconds: 1
  1463. successThreshold: 1
  1464. failureThreshold: 3
  1465. readinessProbe:
  1466. httpGet:
  1467. path: /metrics
  1468. port: monitoring
  1469. initialDelaySeconds: 10
  1470. periodSeconds: 10
  1471. timeoutSeconds: 1
  1472. successThreshold: 1
  1473. failureThreshold: 3
  1474. securityContext:
  1475. allowPrivilegeEscalation: false
  1476. readOnlyRootFilesystem: true
  1477. capabilities:
  1478. drop:
  1479. - ALL
  1480. add:
  1481. - NET_RAW
  1482. nodeSelector:
  1483. "kubernetes.io/os": linux
  1484. tolerations:
  1485. - key: node-role.kubernetes.io/master
  1486. effect: NoSchedule
  1487. operator: Exists
  1488. - key: node-role.kubernetes.io/control-plane
  1489. effect: NoSchedule
  1490. operator: Exists
  1491. ---
  1492. # Source: metallb/templates/controller.yaml
  1493. apiVersion: apps/v1
  1494. kind: Deployment
  1495. metadata:
  1496. name: metallb-controller
  1497. labels:
  1498. helm.sh/chart: metallb-0.13.7
  1499. app.kubernetes.io/name: metallb
  1500. app.kubernetes.io/instance: metallb
  1501. app.kubernetes.io/version: "v0.13.7"
  1502. app.kubernetes.io/managed-by: Helm
  1503. app.kubernetes.io/component: controller
  1504. spec:
  1505. strategy:
  1506. type: RollingUpdate
  1507. selector:
  1508. matchLabels:
  1509. app.kubernetes.io/name: metallb
  1510. app.kubernetes.io/instance: metallb
  1511. app.kubernetes.io/component: controller
  1512. template:
  1513. metadata:
  1514. labels:
  1515. app.kubernetes.io/name: metallb
  1516. app.kubernetes.io/instance: metallb
  1517. app.kubernetes.io/component: controller
  1518. spec:
  1519. serviceAccountName: metallb-controller
  1520. terminationGracePeriodSeconds: 0
  1521. securityContext:
  1522. fsGroup: 65534
  1523. runAsNonRoot: true
  1524. runAsUser: 65534
  1525. containers:
  1526. - name: controller
  1527. image: quay.io/metallb/controller:v0.13.7
  1528. args:
  1529. - --port=7472
  1530. - --log-level=info
  1531. - --cert-service-name=metallb-webhook-service
  1532. env:
  1533. - name: METALLB_ML_SECRET_NAME
  1534. value: metallb-memberlist
  1535. - name: METALLB_DEPLOYMENT
  1536. value: metallb-controller
  1537. ports:
  1538. - name: monitoring
  1539. containerPort: 7472
  1540. - containerPort: 9443
  1541. name: webhook-server
  1542. protocol: TCP
  1543. volumeMounts:
  1544. - mountPath: /tmp/k8s-webhook-server/serving-certs
  1545. name: cert
  1546. readOnly: true
  1547. livenessProbe:
  1548. httpGet:
  1549. path: /metrics
  1550. port: monitoring
  1551. initialDelaySeconds: 10
  1552. periodSeconds: 10
  1553. timeoutSeconds: 1
  1554. successThreshold: 1
  1555. failureThreshold: 3
  1556. readinessProbe:
  1557. httpGet:
  1558. path: /metrics
  1559. port: monitoring
  1560. initialDelaySeconds: 10
  1561. periodSeconds: 10
  1562. timeoutSeconds: 1
  1563. successThreshold: 1
  1564. failureThreshold: 3
  1565. securityContext:
  1566. allowPrivilegeEscalation: false
  1567. readOnlyRootFilesystem: true
  1568. capabilities:
  1569. drop:
  1570. - ALL
  1571. nodeSelector:
  1572. "kubernetes.io/os": linux
  1573. volumes:
  1574. - name: cert
  1575. secret:
  1576. defaultMode: 420
  1577. secretName: webhook-server-cert
  1578. ---
  1579. # Source: metallb/templates/webhooks.yaml
  1580. apiVersion: admissionregistration.k8s.io/v1
  1581. kind: ValidatingWebhookConfiguration
  1582. metadata:
  1583. name: metallb-webhook-configuration
  1584. labels:
  1585. helm.sh/chart: metallb-0.13.7
  1586. app.kubernetes.io/name: metallb
  1587. app.kubernetes.io/instance: metallb
  1588. app.kubernetes.io/version: "v0.13.7"
  1589. app.kubernetes.io/managed-by: Helm
  1590. webhooks:
  1591. - admissionReviewVersions:
  1592. - v1
  1593. clientConfig:
  1594. service:
  1595. name: metallb-webhook-service
  1596. namespace: default
  1597. path: /validate-metallb-io-v1beta1-addresspool
  1598. failurePolicy: Fail
  1599. name: addresspoolvalidationwebhook.metallb.io
  1600. rules:
  1601. - apiGroups:
  1602. - metallb.io
  1603. apiVersions:
  1604. - v1beta1
  1605. operations:
  1606. - CREATE
  1607. - UPDATE
  1608. resources:
  1609. - addresspools
  1610. sideEffects: None
  1611. - admissionReviewVersions:
  1612. - v1
  1613. clientConfig:
  1614. service:
  1615. name: metallb-webhook-service
  1616. namespace: default
  1617. path: /validate-metallb-io-v1beta2-bgppeer
  1618. failurePolicy: Fail
  1619. name: bgppeervalidationwebhook.metallb.io
  1620. rules:
  1621. - apiGroups:
  1622. - metallb.io
  1623. apiVersions:
  1624. - v1beta2
  1625. operations:
  1626. - CREATE
  1627. - UPDATE
  1628. resources:
  1629. - bgppeers
  1630. sideEffects: None
  1631. - admissionReviewVersions:
  1632. - v1
  1633. clientConfig:
  1634. service:
  1635. name: metallb-webhook-service
  1636. namespace: default
  1637. path: /validate-metallb-io-v1beta1-ipaddresspool
  1638. failurePolicy: Fail
  1639. name: ipaddresspoolvalidationwebhook.metallb.io
  1640. rules:
  1641. - apiGroups:
  1642. - metallb.io
  1643. apiVersions:
  1644. - v1beta1
  1645. operations:
  1646. - CREATE
  1647. - UPDATE
  1648. resources:
  1649. - ipaddresspools
  1650. sideEffects: None
  1651. - admissionReviewVersions:
  1652. - v1
  1653. clientConfig:
  1654. service:
  1655. name: metallb-webhook-service
  1656. namespace: default
  1657. path: /validate-metallb-io-v1beta1-bgpadvertisement
  1658. failurePolicy: Fail
  1659. name: bgpadvertisementvalidationwebhook.metallb.io
  1660. rules:
  1661. - apiGroups:
  1662. - metallb.io
  1663. apiVersions:
  1664. - v1beta1
  1665. operations:
  1666. - CREATE
  1667. - UPDATE
  1668. resources:
  1669. - bgpadvertisements
  1670. sideEffects: None
  1671. - admissionReviewVersions:
  1672. - v1
  1673. clientConfig:
  1674. service:
  1675. name: metallb-webhook-service
  1676. namespace: default
  1677. path: /validate-metallb-io-v1beta1-community
  1678. failurePolicy: Fail
  1679. name: communityvalidationwebhook.metallb.io
  1680. rules:
  1681. - apiGroups:
  1682. - metallb.io
  1683. apiVersions:
  1684. - v1beta1
  1685. operations:
  1686. - CREATE
  1687. - UPDATE
  1688. resources:
  1689. - communities
  1690. sideEffects: None
  1691. - admissionReviewVersions:
  1692. - v1
  1693. clientConfig:
  1694. service:
  1695. name: metallb-webhook-service
  1696. namespace: default
  1697. path: /validate-metallb-io-v1beta1-bfdprofile
  1698. failurePolicy: Fail
  1699. name: bfdprofilevalidationwebhook.metallb.io
  1700. rules:
  1701. - apiGroups:
  1702. - metallb.io
  1703. apiVersions:
  1704. - v1beta1
  1705. operations:
  1706. - CREATE
  1707. - DELETE
  1708. resources:
  1709. - bfdprofiles
  1710. sideEffects: None
  1711. - admissionReviewVersions:
  1712. - v1
  1713. clientConfig:
  1714. service:
  1715. name: metallb-webhook-service
  1716. namespace: default
  1717. path: /validate-metallb-io-v1beta1-l2advertisement
  1718. failurePolicy: Fail
  1719. name: l2advertisementvalidationwebhook.metallb.io
  1720. rules:
  1721. - apiGroups:
  1722. - metallb.io
  1723. apiVersions:
  1724. - v1beta1
  1725. operations:
  1726. - CREATE
  1727. - UPDATE
  1728. resources:
  1729. - l2advertisements
  1730. sideEffects: None