首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以使用Azure API管理和Azure ACS (kubernetes)作为前端和后端?

是否可以使用Azure API管理和Azure ACS (kubernetes)作为前端和后端?
EN

Stack Overflow用户
提问于 2017-03-19 13:48:04
回答 2查看 2.2K关注 0票数 3

我想在Azure上创建一个简单的架构。我的高级设计非常类似于下面的图片(来源:https://www.import.io/post/using-amazon-lambda-and-api-gateway/)

我确实想通过Azure管理访问内部服务。我在Microfos文档页面上看到的是,这个简单而安全的体系结构并没有作为参考:

https://learn.microsoft.com/en-us/azure/container-service/container-service-kubernetes-walkthrough

我有以下问题:

  1. 如果至少有一个网卡正在使用同一个网络,则无法将API管理分配给虚拟网络(为什么?)
  2. 即使使用对等虚拟网络,我也无法访问10.244.X.0/24网络(豆荚网络),因为只有10.240.0.0/16属于k8s虚拟网络。如何访问集群ips (10.0.0.0/16)和pod ips (10.244.0.0/16)?
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-22 16:44:56

你不需要额外的VNET,而只需要额外的子网。子网可能位于您现有的VNET中。子网的大小可以是Azure支持的最小的/29

API管理的额外子网需求来自于这样一个事实:它是建立在PAAS V1 (经典)技术之上的。虽然我们可以部署到资源管理器VNET (V2层)中,但这是有后果的。Azure中的经典部署模型与资源管理器( Resource )模型并不紧密耦合,因此如果您在V2中创建资源,那么V1就不知道它了,并且可能会出现问题,比如API管理试图使用已经分配给NIC的IP (构建在V2上)。

要了解Azure中经典和资源管理器模型的差异,请参阅博客经典模型与ResourceManager模型的区别

票数 1
EN

Stack Overflow用户

发布于 2017-03-22 16:21:22

答案基本上是,是,,尽管设置并不简单。

你需要:

  • 用于API管理的额外VNet (编辑:一个额外的子网就足够了)
  • 一项服务(kubernetes术语)

步骤:

  1. 对等Kubernetes VNet和您创建的额外VNet (测试)
  2. API管理->虚拟网络:更改为外部
  3. 选择一个额外的虚拟网络(让我们称之为'apimgmntvnet')和一个子网
  4. ,it!喝杯啤酒,因为我花了一小时时间!
  5. 同时,在内部公开部署:kubectl expose deployment app --port=<serviceport> --name=app --target-port=<containerport> --type=NodePort (NodePort是重要的!LoadBalancer类型触发kubernetes来动态配置Kubernetes安装的Azure外部LB )
  6. 检查节点IP: kubernetes (kubectl proxy) BUI上的端口

  1. API管理-> Publisher门户:将修改为IP地址(AgentIP:30361)

理论上应该管用。建议从apimgmntvnet中的VM开始,先从VM中窥视,然后再删除它(如果至少存在一个NIC,则apimgmntvnet不能成为VNet的一部分(?!) )。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42887339

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档