bit*_*ter 11 kubernetes aws-ec2
Kubernetes为每项服务创建一个负载均衡器; 自动在GCE中.如何在AWS上管理类似的东西?
Kubernetes服务基本上使用kubeproxy来处理内部流量.但是那个kubeproxy ip它无法访问外部网络.
有一种方法可以实现这一目标吗?
Ale*_*son 13
在您的服务定义中,将其type 字段设置为LoadBalancer,如果您在AWS上运行,kubernetes将自动为您创建AWS Elastic Load Balancer.此功能应适用于GCE/GKE,AWS和OpenStack.
有关示例,请查看guestbook-go示例.
最小的例子:
kind: Service
apiVersion: v1
metadata:
name: my-service
spec:
type: LoadBalancer
selector:
app: MyApp
ports:
- protocol: TCP
port: 80
targetPort: 9376
Run Code Online (Sandbox Code Playgroud)
相关文档:
在编写时,了解所有service.beta.kubernetes.io注释的最佳方法是阅读源代码:
为了使控制器能够管理ELB,它将需要在主实例IAM角色中设置的权限,例如:
...
{
"Action": "elasticloadbalancing:*",
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"ecr:GetAuthorizationToken",
"ecr:BatchCheckLayerAvailability",
"ecr:GetDownloadUrlForLayer",
"ecr:GetRepositoryPolicy",
"ecr:DescribeRepositories",
"ecr:ListImages",
"ecr:BatchGetImage"
],
"Resource": "*",
"Effect": "Allow"
},
...
Run Code Online (Sandbox Code Playgroud)
应该--cloud-provider=aws在kube-apiserver上设置云提供商.
| 归档时间: |
|
| 查看次数: |
7334 次 |
| 最近记录: |