Documentation ¶
Overview ¶
© 2021 Red Hat, Inc. and others
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
© 2021 Red Hat, Inc. and others
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
© 2021 Red Hat, Inc. and others
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
© 2021 Red Hat, Inc. and others
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
© 2021 Red Hat, Inc. and others
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
© 2021 Red Hat, Inc. and others
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
© 2021 Red Hat, Inc. and others
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
© 2021 Red Hat, Inc. and others
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
© 2021 Red Hat, Inc. and others
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Index ¶
- Constants
- func CreateGlobalNetMarkingChain(ipt iptables.Interface) error
- func MarkRemoteClusterTraffic(ipt iptables.Interface, remoteCidr string, addRules bool)
- func RecordAllocateGlobalIP(cidr string)
- func RecordAvailability(cidr string, count int)
- func RecordDeallocateGlobalIP(cidr string)
- type Controller
- type GatewayMonitor
- type IPPool
- type InformerConfigStruct
- type Operation
- type SubmarinerIPAMControllerSpecification
Constants ¶
const ( SubmarinerIPAMGlobalIP = "submariner.io/globalIp" AddRules = true DeleteRules = false Process = "Process" Ignore = "Ignore" Requeue = "Requeue" )
Variables ¶
This section is empty.
Functions ¶
func RecordAllocateGlobalIP ¶ added in v0.9.0
func RecordAllocateGlobalIP(cidr string)
func RecordAvailability ¶ added in v0.9.0
func RecordDeallocateGlobalIP ¶ added in v0.9.0
func RecordDeallocateGlobalIP(cidr string)
Types ¶
type Controller ¶
type Controller struct {
// contains filtered or unexported fields
}
func NewController ¶
func NewController(spec *SubmarinerIPAMControllerSpecification, config *InformerConfigStruct, globalCIDR, gwNodeName string) (*Controller, error)
func (*Controller) Start ¶ added in v0.9.0
func (i *Controller) Start(stopCh <-chan struct{}) error
type GatewayMonitor ¶
type GatewayMonitor struct {
// contains filtered or unexported fields
}
func NewGatewayMonitor ¶
func NewGatewayMonitor(spec *SubmarinerIPAMControllerSpecification, submarinerClient submarinerClientset.Interface, clientSet kubernetes.Interface, dynamicClient dynamic.Interface) (*GatewayMonitor, error)
func (*GatewayMonitor) Start ¶ added in v0.9.0
func (gm *GatewayMonitor) Start(stopCh <-chan struct{}) error
func (*GatewayMonitor) Stop ¶ added in v0.9.0
func (gm *GatewayMonitor) Stop()
type IPPool ¶ added in v0.9.0
func (*IPPool) GetAllocatedIP ¶ added in v0.9.0
func (*IPPool) IsAvailable ¶ added in v0.9.0
type InformerConfigStruct ¶
type InformerConfigStruct struct { KubeClientSet kubernetes.Interface ServiceInformer kubeInformers.ServiceInformer PodInformer kubeInformers.PodInformer NodeInformer kubeInformers.NodeInformer SvcExInformer informers.GenericInformer DynamicClientSet dynamic.Interface SvcExGvr schema.GroupVersionResource }