aibangjuxin / groovy

study groovy
1 stars 0 forks source link

Google mcs #125

Open aibangjuxin opened 6 months ago

aibangjuxin commented 6 months ago

下面是一个用Mermaid格式绘制的架构图,展示了通过ClusterIP连接两个集群的Google MCS(Multiple Cluster Services)架构:

graph TD;
    subgraph Cluster1
    A[Service1] -->|ClusterIP| B[Google MCS Gateway]
    end

    subgraph Cluster2
    C[Service2] -->|ClusterIP| B
    end

    B --> D[External Service]

在这个架构中,Cluster1和Cluster2分别有一个服务(Service1和Service2),它们通过ClusterIP连接到Google MCS网关(Google MCS Gateway)。Google MCS网关充当中间层,允许来自两个集群的服务相互访问。此外,Google MCS网关还可以连接到外部服务(External Service)。

aibangjuxin commented 6 months ago
graph LR
  subgraph "Cluster A"
    CR1[("ClusterIP Service A\ncluster.local")] -- "Selects backend pods" --> PODA1[("Pod A1\napp=A")]
    CR1 -- "Selects backend pods" --> PODA2[("Pod A2\napp=A")]
  end
  subgraph "Cluster B"
    CR2[("ClusterIP Service B\ncluster.local")] -- "Selects backend pods" --> PODB1[("Pod B1\napp=B")]
    CR2 -- "Selects backend pods" --> PODB2[("Pod B2\napp=B")]
  end
  subgraph "Google MCS"
    MCS[("Multiple Cluster Services\nManaged by Google Kubernetes Engine")]
  end
  MCS --- CR1 & CR2
  style MCS fill:#f9f,stroke:#333,stroke-width:2px
  style CR1 fill:#bbf,stroke:#333,stroke-width:2px
  style CR2 fill:#bbf,stroke:#333,stroke-width:2px

此Mermaid图表示了一个通过Google Kubernetes Engine(GKE)管理的Google MCS来连接两个集群的示例架构。在这个架构中,Cluster A和Cluster B都有各自内部的ClusterIP服务,它们用来在各自集群内部选择后端Pods。通过Google MCS(在图中表现为连接两个ClusterIP服务的组件),两个集群之间可以相互通信和跨集群提供服务。

aibangjuxin commented 6 months ago
graph LR
subgraph Cluster 1
    A[Node 1]
    B[Node 2]
    C[Node 3]
    service1[Service 1]
end

subgraph Cluster 2
    D[Node 4]
    E[Node 5]
    F[Node 6]
    service2[Service 2]
end

A --> B
B --> C
D --> E
E --> F
service1 --> service2[ClusterIP]
service2 --> service1[ClusterIP]
aibangjuxin commented 6 months ago
graph LR
    subgraph Cluster A
    CIPOne -- Selects backend Pods --> BackendPodsA
    end

    subgraph Cluster B
    CIPTwo -- Selects backend Pods --> BackendPodsB
    end

    subgraph Google MCS
    CIPOne -- Connects with --> CIPTwo
    end