You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

525 lines
14 KiB

  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. name: ips.kubeovn.io
  5. spec:
  6. group: kubeovn.io
  7. versions:
  8. - name: v1
  9. served: true
  10. storage: true
  11. additionalPrinterColumns:
  12. - name: V4IP
  13. type: string
  14. jsonPath: .spec.v4IpAddress
  15. - name: V6IP
  16. type: string
  17. jsonPath: .spec.v6IpAddress
  18. - name: Mac
  19. type: string
  20. jsonPath: .spec.macAddress
  21. - name: Node
  22. type: string
  23. jsonPath: .spec.nodeName
  24. - name: Subnet
  25. type: string
  26. jsonPath: .spec.subnet
  27. schema:
  28. openAPIV3Schema:
  29. type: object
  30. properties:
  31. spec:
  32. type: object
  33. properties:
  34. podName:
  35. type: string
  36. namespace:
  37. type: string
  38. subnet:
  39. type: string
  40. attachSubnets:
  41. type: array
  42. items:
  43. type: string
  44. nodeName:
  45. type: string
  46. ipAddress:
  47. type: string
  48. v4IpAddress:
  49. type: string
  50. v6IpAddress:
  51. type: string
  52. attachIps:
  53. type: array
  54. items:
  55. type: string
  56. macAddress:
  57. type: string
  58. attachMacs:
  59. type: array
  60. items:
  61. type: string
  62. containerID:
  63. type: string
  64. scope: Cluster
  65. names:
  66. plural: ips
  67. singular: ip
  68. kind: IP
  69. shortNames:
  70. - ip
  71. ---
  72. apiVersion: apiextensions.k8s.io/v1
  73. kind: CustomResourceDefinition
  74. metadata:
  75. name: subnets.kubeovn.io
  76. spec:
  77. group: kubeovn.io
  78. versions:
  79. - name: v1
  80. served: true
  81. storage: true
  82. subresources:
  83. status: {}
  84. additionalPrinterColumns:
  85. - name: Provider
  86. type: string
  87. jsonPath: .spec.provider
  88. - name: Vpc
  89. type: string
  90. jsonPath: .spec.vpc
  91. - name: Protocol
  92. type: string
  93. jsonPath: .spec.protocol
  94. - name: CIDR
  95. type: string
  96. jsonPath: .spec.cidrBlock
  97. - name: Private
  98. type: boolean
  99. jsonPath: .spec.private
  100. - name: NAT
  101. type: boolean
  102. jsonPath: .spec.natOutgoing
  103. - name: ExternalEgressGateway
  104. type: string
  105. jsonPath: .spec.externalEgressGateway
  106. - name: PolicyRoutingPriority
  107. type: integer
  108. jsonPath: .spec.policyRoutingPriority
  109. - name: PolicyRoutingTableID
  110. type: integer
  111. jsonPath: .spec.policyRoutingTableID
  112. - name: Default
  113. type: boolean
  114. jsonPath: .spec.default
  115. - name: GatewayType
  116. type: string
  117. jsonPath: .spec.gatewayType
  118. - name: V4Used
  119. type: number
  120. jsonPath: .status.v4usingIPs
  121. - name: V4Available
  122. type: number
  123. jsonPath: .status.v4availableIPs
  124. - name: V6Used
  125. type: number
  126. jsonPath: .status.v6usingIPs
  127. - name: V6Available
  128. type: number
  129. jsonPath: .status.v6availableIPs
  130. schema:
  131. openAPIV3Schema:
  132. type: object
  133. properties:
  134. status:
  135. type: object
  136. properties:
  137. v4availableIPs:
  138. type: number
  139. v4usingIPs:
  140. type: number
  141. v6availableIPs:
  142. type: number
  143. v6usingIPs:
  144. type: number
  145. activateGateway:
  146. type: string
  147. conditions:
  148. type: array
  149. items:
  150. type: object
  151. properties:
  152. type:
  153. type: string
  154. status:
  155. type: string
  156. reason:
  157. type: string
  158. message:
  159. type: string
  160. lastUpdateTime:
  161. type: string
  162. lastTransitionTime:
  163. type: string
  164. spec:
  165. type: object
  166. properties:
  167. vpc:
  168. type: string
  169. default:
  170. type: boolean
  171. protocol:
  172. type: string
  173. cidrBlock:
  174. type: string
  175. namespaces:
  176. type: array
  177. items:
  178. type: string
  179. gateway:
  180. type: string
  181. provider:
  182. type: string
  183. excludeIps:
  184. type: array
  185. items:
  186. type: string
  187. gatewayType:
  188. type: string
  189. allowSubnets:
  190. type: array
  191. items:
  192. type: string
  193. gatewayNode:
  194. type: string
  195. natOutgoing:
  196. type: boolean
  197. externalEgressGateway:
  198. type: string
  199. policyRoutingPriority:
  200. type: integer
  201. minimum: 1
  202. maximum: 32765
  203. policyRoutingTableID:
  204. type: integer
  205. minimum: 1
  206. maximum: 2147483647
  207. not:
  208. enum:
  209. - 252 # compat
  210. - 253 # default
  211. - 254 # main
  212. - 255 # local
  213. private:
  214. type: boolean
  215. vlan:
  216. type: string
  217. underlayGateway:
  218. type: boolean
  219. disableInterConnection:
  220. type: boolean
  221. scope: Cluster
  222. names:
  223. plural: subnets
  224. singular: subnet
  225. kind: Subnet
  226. shortNames:
  227. - subnet
  228. ---
  229. apiVersion: apiextensions.k8s.io/v1
  230. kind: CustomResourceDefinition
  231. metadata:
  232. name: vlans.kubeovn.io
  233. spec:
  234. group: kubeovn.io
  235. versions:
  236. - name: v1
  237. served: true
  238. storage: true
  239. schema:
  240. openAPIV3Schema:
  241. type: object
  242. properties:
  243. spec:
  244. type: object
  245. properties:
  246. id:
  247. type: integer
  248. minimum: 0
  249. maximum: 4095
  250. provider:
  251. type: string
  252. vlanId:
  253. type: integer
  254. description: Deprecated in favor of id
  255. providerInterfaceName:
  256. type: string
  257. description: Deprecated in favor of provider
  258. required:
  259. - provider
  260. status:
  261. type: object
  262. properties:
  263. subnets:
  264. type: array
  265. items:
  266. type: string
  267. additionalPrinterColumns:
  268. - name: ID
  269. type: string
  270. jsonPath: .spec.id
  271. - name: Provider
  272. type: string
  273. jsonPath: .spec.provider
  274. scope: Cluster
  275. names:
  276. plural: vlans
  277. singular: vlan
  278. kind: Vlan
  279. shortNames:
  280. - vlan
  281. ---
  282. apiVersion: apiextensions.k8s.io/v1
  283. kind: CustomResourceDefinition
  284. metadata:
  285. name: provider-networks.kubeovn.io
  286. spec:
  287. group: kubeovn.io
  288. versions:
  289. - name: v1
  290. served: true
  291. storage: true
  292. schema:
  293. openAPIV3Schema:
  294. type: object
  295. properties:
  296. spec:
  297. type: object
  298. properties:
  299. defaultInterface:
  300. type: string
  301. customInterfaces:
  302. type: array
  303. items:
  304. type: object
  305. properties:
  306. interface:
  307. type: string
  308. nodes:
  309. type: array
  310. items:
  311. type: string
  312. excludeNodes:
  313. type: array
  314. items:
  315. type: string
  316. required:
  317. - defaultInterface
  318. status:
  319. type: object
  320. properties:
  321. readyNodes:
  322. type: array
  323. items:
  324. type: string
  325. vlans:
  326. type: array
  327. items:
  328. type: string
  329. conditions:
  330. type: array
  331. items:
  332. type: object
  333. properties:
  334. node:
  335. type: string
  336. type:
  337. type: string
  338. status:
  339. type: string
  340. reason:
  341. type: string
  342. message:
  343. type: string
  344. lastUpdateTime:
  345. type: string
  346. lastTransitionTime:
  347. type: string
  348. additionalPrinterColumns:
  349. - name: DefaultInterface
  350. type: string
  351. jsonPath: .spec.defaultInterface
  352. scope: Cluster
  353. names:
  354. plural: provider-networks
  355. singular: provider-network
  356. kind: ProviderNetwork
  357. listKind: ProviderNetworkList
  358. ---
  359. apiVersion: apiextensions.k8s.io/v1
  360. kind: CustomResourceDefinition
  361. metadata:
  362. name: vpcs.kubeovn.io
  363. spec:
  364. group: kubeovn.io
  365. versions:
  366. - additionalPrinterColumns:
  367. - jsonPath: .status.standby
  368. name: Standby
  369. type: boolean
  370. - jsonPath: .status.subnets
  371. name: Subnets
  372. type: string
  373. name: v1
  374. schema:
  375. openAPIV3Schema:
  376. properties:
  377. spec:
  378. properties:
  379. namespaces:
  380. items:
  381. type: string
  382. type: array
  383. staticRoutes:
  384. items:
  385. properties:
  386. policy:
  387. type: string
  388. cidr:
  389. type: string
  390. nextHopIP:
  391. type: string
  392. type: object
  393. type: array
  394. type: object
  395. status:
  396. properties:
  397. conditions:
  398. items:
  399. properties:
  400. lastTransitionTime:
  401. type: string
  402. lastUpdateTime:
  403. type: string
  404. message:
  405. type: string
  406. reason:
  407. type: string
  408. status:
  409. type: string
  410. type:
  411. type: string
  412. type: object
  413. type: array
  414. default:
  415. type: boolean
  416. defaultLogicalSwitch:
  417. type: string
  418. router:
  419. type: string
  420. standby:
  421. type: boolean
  422. subnets:
  423. items:
  424. type: string
  425. type: array
  426. tcpLoadBalancer:
  427. type: string
  428. tcpSessionLoadBalancer:
  429. type: string
  430. udpLoadBalancer:
  431. type: string
  432. udpSessionLoadBalancer:
  433. type: string
  434. type: object
  435. type: object
  436. served: true
  437. storage: true
  438. subresources:
  439. status: {}
  440. names:
  441. kind: Vpc
  442. listKind: VpcList
  443. plural: vpcs
  444. shortNames:
  445. - vpc
  446. singular: vpc
  447. scope: Cluster
  448. ---
  449. apiVersion: apiextensions.k8s.io/v1
  450. kind: CustomResourceDefinition
  451. metadata:
  452. name: vpc-nat-gateways.kubeovn.io
  453. spec:
  454. group: kubeovn.io
  455. names:
  456. plural: vpc-nat-gateways
  457. singular: vpc-nat-gateway
  458. shortNames:
  459. - vpc-nat-gw
  460. kind: VpcNatGateway
  461. listKind: VpcNatGatewayList
  462. scope: Cluster
  463. versions:
  464. - name: v1
  465. served: true
  466. storage: true
  467. schema:
  468. openAPIV3Schema:
  469. type: object
  470. properties:
  471. spec:
  472. type: object
  473. properties:
  474. dnatRules:
  475. type: array
  476. items:
  477. type: object
  478. properties:
  479. eip:
  480. type: string
  481. externalPort:
  482. type: string
  483. internalIp:
  484. type: string
  485. internalPort:
  486. type: string
  487. protocol:
  488. type: string
  489. eips:
  490. type: array
  491. items:
  492. type: object
  493. properties:
  494. eipCIDR:
  495. type: string
  496. gateway:
  497. type: string
  498. floatingIpRules:
  499. type: array
  500. items:
  501. type: object
  502. properties:
  503. eip:
  504. type: string
  505. internalIp:
  506. type: string
  507. lanIp:
  508. type: string
  509. snatRules:
  510. type: array
  511. items:
  512. type: object
  513. properties:
  514. eip:
  515. type: string
  516. internalCIDR:
  517. type: string
  518. subnet:
  519. type: string
  520. vpc:
  521. type: string
  522. subresources:
  523. status: {}
  524. conversion:
  525. strategy: None