Documentation
¶
Index ¶
- func SetOVNNBCTLDebugLogging(enabled bool)
- func SetOVSVSCTLDebugLogging(enabled bool)
- type NetworkFabric
- type OVNFabric
- func (o *OVNFabric) DeleteBridge(vnet *api.VirtualNetwork) error
- func (o *OVNFabric) EnsureBridge(vnet *api.VirtualNetwork) error
- func (o *OVNFabric) EnsureOverlayMesh(vnet *api.VirtualNetwork, peers []string) error
- func (o *OVNFabric) GetBridgeStatus(vnet *api.VirtualNetwork) (bool, int, error)
- func (o *OVNFabric) PruneOverlayMesh(vnet *api.VirtualNetwork, remainPeers []string) error
- type OVSFabric
- func (o *OVSFabric) DeleteBridge(vnet *api.VirtualNetwork) error
- func (o *OVSFabric) EnsureBridge(vnet *api.VirtualNetwork) error
- func (o *OVSFabric) EnsureOverlayMesh(vnet *api.VirtualNetwork, peers []string) error
- func (o *OVSFabric) GetBridgeStatus(vnet *api.VirtualNetwork) (bool, int, error)
- func (o *OVSFabric) PruneOverlayMesh(vnet *api.VirtualNetwork, remainPeers []string) error
- type PeerNode
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func SetOVNNBCTLDebugLogging ¶ added in v0.24.0
func SetOVNNBCTLDebugLogging(enabled bool)
SetOVNNBCTLDebugLogging enables/disables ovn-nbctl syslog verbosity for this package. When disabled, ovn-nbctl "Called as ..." INFO logs are suppressed.
func SetOVSVSCTLDebugLogging ¶ added in v0.24.0
func SetOVSVSCTLDebugLogging(enabled bool)
SetOVSVSCTLDebugLogging enables/disables ovs-vsctl syslog verbosity. When disabled, ovs-vsctl "Called as ..." INFO logs are suppressed.
Types ¶
type NetworkFabric ¶
type NetworkFabric interface {
// EnsureBridge はローカルノードで OVS ブリッジを作成・確認する。
// 既存あり前提で冪等に実行される。
// vnet: 対象ネットワークオブジェクト
// 戻り値: (成功時は nil、既存/失敗はエラー)
EnsureBridge(vnet *api.VirtualNetwork) error
// EnsureOverlayMesh はローカルノード上で、指定ピアへのトンネル群を作成・確認する。
// 冪等で実行される。
// vnet: 対象ネットワーク
// peers: 疎通対象のリモートノード IP リスト
EnsureOverlayMesh(vnet *api.VirtualNetwork, peers []string) error
// PruneOverlayMesh は不要なトンネルを削除する。
// 例: ノード離脱時に peer リストから外れたノードへのトンネルを削除。
PruneOverlayMesh(vnet *api.VirtualNetwork, remainPeers []string) error
// DeleteBridge はブリッジとその配下のトンネルをすべて削除する。
// 削除前に必ず libvirt net destroy/undefine が完了していることを前提とする。
DeleteBridge(vnet *api.VirtualNetwork) error
// GetBridgeStatus はブリッジ存在状態と peer 数を返す。
// 監視・drift 検知用。
GetBridgeStatus(vnet *api.VirtualNetwork) (exists bool, peerCount int, err error)
}
NetworkFabric は OVS などのオーバーレイネットワーク実体操作を担当する。 controller 層がこのインターフェースを通じて、libvirt とは独立に overlay を管理する。
type OVNFabric ¶ added in v0.18.0
type OVNFabric struct {
// contains filtered or unexported fields
}
OVNFabric は OVN を優先して利用する Fabric 実装。 現段階では geneve オーバーレイを OVN で扱い、既存 vxlan は OVS 実装へ委譲する。
func NewOVNFabric ¶ added in v0.18.0
func NewOVNFabric() *OVNFabric
NewOVNFabric は OVNFabric インスタンスを生成する。
func (*OVNFabric) DeleteBridge ¶ added in v0.18.0
func (o *OVNFabric) DeleteBridge(vnet *api.VirtualNetwork) error
func (*OVNFabric) EnsureBridge ¶ added in v0.18.0
func (o *OVNFabric) EnsureBridge(vnet *api.VirtualNetwork) error
func (*OVNFabric) EnsureOverlayMesh ¶ added in v0.18.0
func (o *OVNFabric) EnsureOverlayMesh(vnet *api.VirtualNetwork, peers []string) error
func (*OVNFabric) GetBridgeStatus ¶ added in v0.18.0
func (*OVNFabric) PruneOverlayMesh ¶ added in v0.18.0
func (o *OVNFabric) PruneOverlayMesh(vnet *api.VirtualNetwork, remainPeers []string) error
type OVSFabric ¶
type OVSFabric struct {
}
OVSFabric はシェルコマンドベースの OVS/VXLAN 実装。 本番環境では将来 libopenswitch バインディングへの切り替えを前提に、 ここではコマンド呼び出しでプロトタイピングする。
func (*OVSFabric) DeleteBridge ¶
func (o *OVSFabric) DeleteBridge(vnet *api.VirtualNetwork) error
DeleteBridge はブリッジをすべて削除する。
func (*OVSFabric) EnsureBridge ¶
func (o *OVSFabric) EnsureBridge(vnet *api.VirtualNetwork) error
EnsureBridge は OVS ブリッジを作成または確認する。
func (*OVSFabric) EnsureOverlayMesh ¶ added in v0.18.0
func (o *OVSFabric) EnsureOverlayMesh(vnet *api.VirtualNetwork, peers []string) error
EnsureOverlayMesh はピアノードへのオーバーレイトンネルを作成・確認する。
func (*OVSFabric) GetBridgeStatus ¶
GetBridgeStatus はブリッジ状態を返す。
func (*OVSFabric) PruneOverlayMesh ¶ added in v0.18.0
func (o *OVSFabric) PruneOverlayMesh(vnet *api.VirtualNetwork, remainPeers []string) error
PruneOverlayMesh は残すべきピア以外のトンネルを削除する。