implement ippool
1. support vlan ippool management 2. support calico ippool management Signed-off-by: Duan Jiong <djduanjiong@gmail.com>
This commit is contained in:
79
config/crds/network.kubesphere.io_ipamblocks.yaml
generated
Normal file
79
config/crds/network.kubesphere.io_ipamblocks.yaml
generated
Normal file
@@ -0,0 +1,79 @@
|
||||
|
||||
---
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: ipamblocks.network.kubesphere.io
|
||||
spec:
|
||||
group: network.kubesphere.io
|
||||
names:
|
||||
kind: IPAMBlock
|
||||
plural: ipamblocks
|
||||
scope: Cluster
|
||||
validation:
|
||||
openAPIV3Schema:
|
||||
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:
|
||||
description: Standard object's metadata.
|
||||
type: object
|
||||
spec:
|
||||
description: Specification of the IPAMBlock.
|
||||
properties:
|
||||
allocations:
|
||||
items:
|
||||
type: integer
|
||||
nullable: true
|
||||
type: array
|
||||
attributes:
|
||||
items:
|
||||
properties:
|
||||
handle_id:
|
||||
type: string
|
||||
secondary:
|
||||
additionalProperties:
|
||||
type: string
|
||||
type: object
|
||||
type: object
|
||||
type: array
|
||||
cidr:
|
||||
type: string
|
||||
deleted:
|
||||
type: boolean
|
||||
id:
|
||||
format: int32
|
||||
type: integer
|
||||
unallocated:
|
||||
items:
|
||||
type: integer
|
||||
type: array
|
||||
required:
|
||||
- allocations
|
||||
- attributes
|
||||
- cidr
|
||||
- deleted
|
||||
- id
|
||||
- unallocated
|
||||
type: object
|
||||
type: object
|
||||
version: v1alpha1
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
served: true
|
||||
storage: true
|
||||
status:
|
||||
acceptedNames:
|
||||
kind: ""
|
||||
plural: ""
|
||||
conditions: []
|
||||
storedVersions: []
|
||||
57
config/crds/network.kubesphere.io_ipamhandles.yaml
generated
Normal file
57
config/crds/network.kubesphere.io_ipamhandles.yaml
generated
Normal file
@@ -0,0 +1,57 @@
|
||||
|
||||
---
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: ipamhandles.network.kubesphere.io
|
||||
spec:
|
||||
group: network.kubesphere.io
|
||||
names:
|
||||
kind: IPAMHandle
|
||||
plural: ipamhandles
|
||||
scope: Cluster
|
||||
validation:
|
||||
openAPIV3Schema:
|
||||
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:
|
||||
description: Standard object's metadata.
|
||||
type: object
|
||||
spec:
|
||||
description: Specification of the IPAMHandle.
|
||||
properties:
|
||||
block:
|
||||
additionalProperties:
|
||||
type: integer
|
||||
type: object
|
||||
deleted:
|
||||
type: boolean
|
||||
handleID:
|
||||
type: string
|
||||
required:
|
||||
- block
|
||||
- deleted
|
||||
- handleID
|
||||
type: object
|
||||
type: object
|
||||
version: v1alpha1
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
served: true
|
||||
storage: true
|
||||
status:
|
||||
acceptedNames:
|
||||
kind: ""
|
||||
plural: ""
|
||||
conditions: []
|
||||
storedVersions: []
|
||||
121
config/crds/network.kubesphere.io_ippools.yaml
generated
Normal file
121
config/crds/network.kubesphere.io_ippools.yaml
generated
Normal file
@@ -0,0 +1,121 @@
|
||||
|
||||
---
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: ippools.network.kubesphere.io
|
||||
spec:
|
||||
group: network.kubesphere.io
|
||||
names:
|
||||
kind: IPPool
|
||||
plural: ippools
|
||||
scope: Cluster
|
||||
validation:
|
||||
openAPIV3Schema:
|
||||
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:
|
||||
properties:
|
||||
blockSize:
|
||||
description: The block size to use for IP address assignments from this
|
||||
pool. Defaults to 26 for IPv4 and 112 for IPv6.
|
||||
type: integer
|
||||
cidr:
|
||||
description: The pool CIDR.
|
||||
type: string
|
||||
disabled:
|
||||
description: When disabled is true, IPAM will not assign addresses
|
||||
from this pool.
|
||||
type: boolean
|
||||
dns:
|
||||
description: DNS contains values interesting for DNS resolvers
|
||||
properties:
|
||||
domain:
|
||||
type: string
|
||||
nameservers:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
options:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
search:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
gateway:
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
rangeEnd:
|
||||
type: string
|
||||
rangeStart:
|
||||
type: string
|
||||
routes:
|
||||
items:
|
||||
properties:
|
||||
dst:
|
||||
type: string
|
||||
gateway:
|
||||
type: string
|
||||
type: object
|
||||
type: array
|
||||
type:
|
||||
type: string
|
||||
vlanConfig:
|
||||
properties:
|
||||
master:
|
||||
type: string
|
||||
vlanId:
|
||||
format: int32
|
||||
type: integer
|
||||
required:
|
||||
- master
|
||||
- vlanId
|
||||
type: object
|
||||
workspace:
|
||||
type: string
|
||||
required:
|
||||
- cidr
|
||||
- type
|
||||
type: object
|
||||
status:
|
||||
properties:
|
||||
allocations:
|
||||
description: Allocations should equal to (Total - Reserved - Unallocated)
|
||||
type: integer
|
||||
capacity:
|
||||
type: integer
|
||||
reserved:
|
||||
type: integer
|
||||
synced:
|
||||
type: boolean
|
||||
unallocated:
|
||||
type: integer
|
||||
type: object
|
||||
type: object
|
||||
version: v1alpha1
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
served: true
|
||||
storage: true
|
||||
status:
|
||||
acceptedNames:
|
||||
kind: ""
|
||||
plural: ""
|
||||
conditions: []
|
||||
storedVersions: []
|
||||
Reference in New Issue
Block a user