首页 文章 精选 留言 我的

精选列表

搜索[edge],共3035篇文章
优秀的个人博客,低调大师

ServiceMesh Edge设计

入站和出站流量的一般注意事项 首先查看Istio的路由: 当连connection访问Istio的某个成员时(假设一个入口网关,但它对每个成员都起作用),所有路由选择决定均基于主机名(host header字段)。 Ingress gateways为侦听某些端口上的连接,以及基于网关对象的某些主机名。网关配置会根据标签选择器选择要应用网关的Pod。网关对象应在网关容器所在的相同namespace中定义。 默认情况下,Ingress gateway不知道Istio的服务。为了使入口网关了解网格中的服务,必须定义VirtualService并将其应用于网关对象。当VirtualService与网关对象不在同一个命名空间中时(在大多数情况下是这种情况),应以NamespacedName格式(<namespace> / <gateway>)引用网关对象。 VirtualService可以与DestinationRule结合使用,以进行细粒度的流量管理。 然后,VirtualService将路由到Kubernetes服务的活动成员(自动发现)或ServiceEntry。ServiceEntries提供了手动定义无法自动发现的端点的功能,这些端点可能表示Istio外部的目标(位置:MESH_EXTERNAL)。 设计入口流量 对于入站流量,通常最好的做法是先让流量通过一个或多个入口网关,然后再启动服务。 在设计如何部署服务网格的入口网关时,需要考虑两个主要因素: 需要多少个入口网关? 入口网关和OpenShift路由器之间是什么关系? 在大多数情况下,每个Isito集群有一个入口网关就足够了。 但是,您可能会遇到需要其他网关的情况。场景包括何时需要支持两种截然不同的配置,或者何时需要物理隔离两种流量(此处是此配置的示例)。当您可能有多个入口网关时,另一个实例是入口网关需要由其命名空间中的各个租户拥有。 我们介绍三种入口网关部署模式: OpenShift ServiceMesh Operator当前不支持最后一个配置设置,并且需要租户手动设置。 另一个需要考虑的点是最外围使用OpenShift router还是LoadBalancer服务公开给Istio的Ingress Gateway,如下图所示: 在上图中,我们可以看到两种情况,一种是将OpenShift路由器与入口网关链接在一起,另一种是将入口网关直接暴露出来。 从概念上讲,Router是流量进入OpenShift SDN的入口点,服务网格Ingress Gateway是流量进入网格的入口。 当流量为HTTP或SNI + TLS时,前一种情况更为合适,因为这是路由器支持的流量类型,并且增加的延迟不是问题。可以将服务网格控制平面配置为与要定义的网关对象一致地自动创建路由(ior_enabled:true)。 如果流量是路由器本身不支持的类型,或者具有良好的延迟性能很重要,则后一种情况更合适。在这些情况下,网格管理员需要配置LoadBalancer服务以及正确的DNS记录。DNS记录的创建可以在externalDNS externalDNS的帮助下自动进行(这里是一个示例)。 设计出口流量 对于出口流量,我们必须再次决定我们需要多少个出口网关。在某些情况下,答案可能是零。但是,在大多数情况下,拥有一个出口网关将很有用: 来自istio中的Pod的出站流量始终会经过envoy网关,因此即使没有通过envoy gateway,也对该流量进行了一定程度的控制。但是,出口网关可用于实现以下目的: TLS发起和信任域转换。这允许两个PKI域共存。我们可以使用出口网关来终止来自服务网格内部PKI的TLS连接,并使用来自外部PKI的证书来发起新连接。 使用已知的出口IP。如果网状网中服务的出站连接需要源自已知IP,以便可以应用防火墙规则,则可以选择将所有出站连接转移到出口网关,然后在名称空间中定义出口IP, 网关已定义。 与egressIP用例相似,组织可能有要求,所有出站流量都需要根据这些要求来自一组特定的节点。包含要通过出口网关的流量并确保将出口网关Pod部署到那些节点上,是一种满足该要求的方法。 加强出口流量 可以创建EgressNetworkPolicies来强制实施,除了从部署出口网关的名称空间中,没有流量离开群集。我们还可以使用带有出口规则的网络策略来强制离开网状容器的流量保持在网状结构中(再次,我们需要保证用户无法管理网络策略)。 此外,可以将Istio配置为禁止对网格未知的地址进行路由。通常,如果应用程序尝试打开到网格未知的地址的连接,则Istio将使用DNS来解析该地址并执行请求。通过将global.outboundTrafficPolicy模式选项设置为REGISTRY_ONLY,我们可以将Istio配置为仅允许连接到已知地址(即,为其定义VirtualService的地址)。 为边缘流量配置OAuth身份验证 Istio可以验证OAuth令牌的有效性,作为其最终用户授权策略的一部分。但是,它无法处理不带有OAuth令牌的请求的OIDC身份验证工作流。 Istio假定将在网格外部进行初始身份验证(在其中创建令牌),但是显然两个用例(身份验证流程和令牌验证)密切相关。 实际上,对于许多应用程序,预期的行为是当令牌不可用时,应将用户重定向到身份验证流。 处理此用例的一种方法是在入口网关的前面添加一个能够处理身份验证工作流的OAuth-proxy。如下图所示,该容器甚至可以作为边车部署: 在实践中可以找到这种情况的示例。 您可以在此服务网格部署中添加更多网关,以防需要处理未经身份验证的流量或使用其他身份验证方法的流量。 通过身份验证工作流程创建令牌后,您可以配置入口网关以对其进行验证。此外,您可以配置网格中的所有服务以重新验证令牌,从而提高安全性。为了使其正常工作,您的服务需要在每个步骤中转发令牌。 为边缘流量配置TLS和mTLS 入口和出口网关对于配置应如何在不同的PKI信任域之间处理TLS连接很有用。Istio默认情况下使用内部信任域来管理自己的PKI,并且可以安全地假定网状网络之外还有其他信任域。 下图是捕获这种情况的图: 在上图中,我们可以看到使用服务网格中服务的应用程序位于信任域A中。在这种情况下,已经在消费者和入口网关之间配置了mTLS 。然后,应用程序对属于信任域B的外部服务进行出站呼叫。mTLS通过在出口网关上部署正确的证书进行配置(这是此部分的说明)。 通过在网关级别管理证书,我们实现了以下目标: 简化配置:没有一种将附加证书部署到Sidecar的简便方法,但是将证书材料添加到网关相对容易。 集中配置:网格中的所有服务都可以重用证书配置。 当然,我们可以通过部署CA捆绑包而不是客户端证书来建立常规的TLS部署,此决定不会影响服务网格租户。 如果有一种自动配置证书的机制,则可以大大简化这些类型的设置。Cert-manager Operator是该领域的理想选择。 配置边缘流量的速率限制 在某些情况下,可能有必要对来自网格的出站流量进行速率限制。当上游服务可能已基于定价层施加了限制或传统系统在一段时间内只能处理一定数量的请求或并发连接时,这些类型的流量控制很有用。 此外,不同的SLA可能适用于源自不同来源的流量,并且需要以不同的方式对这些流量类型进行速率限制。 可以将目的地规则和流量策略与断路器配合使用,以管理在从网格中传播时如何区分不同SLA的入站请求的优先级。 在上图中,我们演示了如何将分配了不同SLA类的两种不同入站请求(一种可以分配报头的方式)用于应用不同的目的地规则和相应的流量策略(此处为示例)。这些方法可用于维护健康的上游系统,并允许网格中的服务在达到极限时继续运行或应用断路器模式。 关于联邦Istio 有时候大家有将多个K8S集群上的istio统一管理与通讯的需求。 社区目前已经有方案: https://istio.io/latest/docs/setup/install/multicluster/gateways/ 本文分享自微信公众号 - 大魏分享(david-share)。如有侵权,请联系 support@oschina.cn 删除。本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

优秀的个人博客,低调大师

什么是边缘计算(Edge AI)?

边缘AI发源于边缘计算。边缘计算也称为边缘处理,是一种将服务器放置在本地设备附近网络技术, 这有助于降低系统的处理负载,解决数据传输的延迟问题。这样的处理是在传感器附近或设备产生数据的位置进行的,因此称之为边缘。 边缘计算的发展意味着边缘人工智能正变得越来越重要。各行各业莫不如是,特别是在降低处理延迟和保护数据隐私这方面。本文将探讨边缘AI的影响,为什么重要,及其常见用例。 什么是边缘AI? 边缘AI是指在硬件设备上本地处理的AI算法,可以在没有网络连接的情况下处理数据。这意味着可以在无需流式传输或在云端数据存储的情况下进行数据创建等操作。这一点很重要,因为出现了越来越多的设备数据无法依赖云端处理的情况。比如,工厂的机器人和自动驾驶汽车都需要以最小的延迟高速处理数据。 为了实现这些目标,边缘计算可以在云上靠深度学习生成数据,而在数据原点——即设备本身(边缘)执行模型的推断和预测。 以工厂的工业机器人为例。AI技术可以在这里以人类无法企及的速度,对来自监控摄像头和传感器的大量多模态数据进行可视化和评估,可以用它来检测生产线上人类可能忽略的故障数据。这类物联网结构可以存储生产线上产生的大量数据,并通过机器学习进行分析。它们也是能够提高工厂智能化程度的AI模型的核心。 边缘AI,物联网和5G: 边缘人工智能经常与物联网(IoT)和5G网络放在一起讨论. 物联网一词指的是通过互联网相互连接的设备,包括智能手机、机器人和电子设备。作为一个用人工智能进行分析的平台,边缘人工智能可以收集和存储物联网产生的大量数据,让使用具有可扩展性的云成为可能。这可以提高数据处理和基础设施的灵活性. 5G网络可以增强上述过程,因为其三大特点——超高速、大并发和超低时延——明显优于4G网络. 5G对于物联网和边缘AI的发展是不可或缺的,因为当物联网设备传输数据时,数据量暴涨,从而影响传输速度。传输速度的下降又会产生时延,而时延是实时处理面临的最大问题。 边缘计算和边缘AI为何重要? 越来越多的情况下,设备数据无法通过云端处理。工业机器人和自动驾驶汽车经常出现这种情况,它们需要高速处理,但当数据流增大而产生处理时延时会非常危险。 例如,想象一下自动驾驶汽车在检测道路上的物体,或操作刹车或方向盘时由于云端而延迟。任何数据处理的减慢都会导致车辆的响应速度变慢。如果响应变慢的车辆不能及时做出反应,就可能导致事故的发生。生命此时会切实受到威胁。 对于这些物联网设备来说,实时响应是必要条件。这就要求设备能够在现场分析和评估图像/数据,而不能依赖云端AI。 通过将通常委托给云端的信息处理交给边缘设备,可以实现无传输延迟的实时处理。此外,如果只传输重要信息到云端,可以减少传输数据量,这能将通信中断的风险降到最低。 边缘AI使用场景 边缘AI的市场主要有两个领域:工业机械和消费设备。可以看到,它在控制和优化设备、自动化重复劳动等领域均有进展。 消费设备也有所突破,这些设备的AI摄像头可以自动识别被摄对象。由于设备数量大于工业机器,预计从2021年起,消费设备市场将大幅扩大。 我们把一些边缘AI的常见场景放在下面。 自动驾驶汽车 自动驾驶汽车是应用边缘计算最值得期待的领域。有很多情况下,自动驾驶汽车需要对情况进行即时评估,这就需要实时的数据处理。2019年12月,日本对《道路交通法》和《道路运输车辆法》进行了修订,使得3级自动驾驶汽车更容易上路。它规定了自动驾驶汽车应符合的安全标准,以及自动驾驶汽车可以运行的区域。因此,汽车制造商也在正在努力开发遵守这些标准的自动驾驶汽车。例如,丰田已经在测试TRI-P4的完全自动化(4级)自动驾驶系统了。 无人机 无人机在进行飞行时失控、失踪的新闻越来越多。某些甚至导致了事故的发生。根据无人机降落位置的不同,坠毁造成的后果也可能是灾难性的。 自动驾驶无人机上,飞行员并不主动干涉无人机的飞行。他们远程监控操作,只有在绝对必要的时候才会手动驾驶无人机。最著名的例子是亚马逊的Prime Air,这是一个无人机送货服务,它们正在开发自动驾驶无人机来运送包裹. 人脸识别 人脸识别系统是监控摄像头的发展方向,它可以通过学习人脸识别人类个体。2019年11月,WDS有限公司发布了AI摄像头模块Eeye,通过边缘AI实时分析面部特征。Eeye能快速准确地识别人脸,适用于针对性别、年龄等特征的营销工具,和用来解锁设备的人脸识别场景。 智能手机 这是我们最熟悉的边缘AI设备。Siri和谷歌助手是智能手机上边缘AI的好例子,因为该技术驱动了它们的语音UI。手机上的AI使得数据处理发生在设备(边缘)侧,这意味着不需要将设备数据交付到云端。这有助于保护隐私和减少流量。 未来的边缘AI 边缘AI正高速增长,我们已经看到对该技术的大量投资。像Konduit AI这样的公司正在将它作为其在东南亚的AI战略的关键部分。另一个例子是2020年1月,苹果耗资2亿美元收购了位于西雅图的AI企业Xnor.ai。Xnor.ai的AI技术通过边缘处理来处理用户智能手机上的数据。随着智能手机本身内置人工智能,我们可能会看到语音处理、人脸识别技术和隐私保护方面的进步。。 根据富士景气集团发布的 "2019年AI业务汇总调查",日本的边缘AI计算市场在2018财年的预测市场规模为110亿日元。调查预测,2030财年市场规模将扩大到664亿日元。 而随着5G的普及,可能也将看到全球边缘AI服务成本的下降和需求的上升。 本文转自雷锋网,如需转载请至雷锋网官网申请授权。

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册