![](/img/trans.png)
[英]How to host kubernetes cluster on VPN comprising of VM's from different cloud providers
[英]Curl into API cluster secured by open VPN from another cluster's pod's container
我在一個VPC中在AWS上創建了2個kubernetes集群。
1)專用於微服務(MI)的集群2)專用於Consul / Vault(Vault)的集群因此,基本上這兩個集群都可以通過暴露k8s API的不同經典公共負載平衡器來實現
MI: https : //api.k8s.domain.com保險櫃: https : //api.vault.domain.com
我還在兩個集群上設置了openvpn,因此您需要在vpn中登錄到“curl”或“kubectl”進入集群。 為此,我剛剛在ELB的安全組中添加了一條新規則,在端口443上使用VPN的IP:
HTTPS 443 VPN的IP / 32
此時一切正常,這意味着我能夠在兩個集群中成功“kubectl”。
接下來我需要做的是,能夠從pod的容器內的Vault集群中卷入MI集群。 基本上:
Vault Cluster --------> curl https://api.k8s.domain.com --header“授權:Bearer $ TOKEN”--------> MI集群
問題是,目前集群只允許來自VPN IP的流量。
為了解決這個問題,我在MI集群的負載均衡器的安全組中添加了新規則。
這些新規則允許來自每個保險庫節點的私有和主實例IP的流量。 但由於某種原因,它不起作用!
請注意,在ELB的安全組中添加限制之前,我已確保通信適用於允許所有流量的兩個群集(0.0.0.0/0)
所以問題是當我在pod的容器中執行命令curl到同一個VPC中的另一個集群api時,要添加到安全組的容器的IP是多少?
必須將用於Vault VPC的NAT網關的EIP添加到ELB的安全組以允許流量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.