ACK云原生AI套件初评

本文涉及的产品
应用实时监控服务ARMS - 应用监控,每月50GB免费额度
可观测监控 Prometheus 版,每月50GB免费额度
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: 通过场景体验云原生AI套件

产品定义

云原生 AI 套件通过多个可组装、可扩展、可定制的组件来提供云原生 AI 能力。以 Kubernetes 容器服务为底座,向下封装对各类异构资源的统一管理,向上提供标准 Kubernetes 集群环境和 API,运行各个核心组件。并结合容器镜像服务,以及可观测、智能诊断、弹性伸缩等容器服务相关能力,提供更加全面的产品方案。使用云原生AI套件,您可以充分利用云原生架构和技术,在Kubernetes容器平台上快速定制化构建AI生产系统,并为AI/ML应用和系统提供全栈优化。

能力优势

从上图可以很直观清晰的看出云原生AI套件有四大分层能力模块,可以分别满足企业客户不同角色、不同架构层级的场景需求。

AI 工程管理模块,除了提供 Arena 命令行工具和 SDK,来屏蔽底层复杂性,简化任务管理之外,还提供简单的运维大盘和开发控制台,满足用户快速浏览集群状态、提交和查看任务的需要。

AI 数据加速模块,该模块主要通过面向云原生数据密集型应用的数据编排框架 Fluid 来支持。

AI 任务管理模块,云原生 AI 套件兼容主流 AI 框架和工具,包括 tensorflow、pytorch、JupyterLab、TF-Serving、Triton 等等,也在不断的适配新的分布式训练和推理的框架,如 deepspeed、fasttransformer 等等,能够用统一的方式提交和管理任务。同时,支持集成 Kubeflow Pipelines 或 Argo 云原生工作流引擎,为复杂的 AI 任务提供工作流编排服务。

异构算力管理模块,我们基于容器服务 ACK 提供了资源的管理运维和弹性伸缩,能够支持 CPU、GPU、vGPU、NPU、FPGA 等异构资源的统一接入、监控、诊断和成本分析,帮助运维人员降低管理大规模 GPU 的复杂度,以及提供智能的削峰填谷,减少资源浪费。

开通试用

云原生AI套件支持安装在ACK Pro版集群、ACK Serverless集群Pro版、ACK@Edge Pro版集群,且集群版本为1.18及以上。所以在开通AI套件试用前,需要开通云容器服务ACK 基础版的产品试用。前往产品试用中心,输入关键字ack。如下:

点击“立即试用”,选择合适的地域,其他默认。如下:

在没有角色授权前,“立即试用”按钮是灰色不可用的,点击“前往RAM进行授权”,在授权页面点击“同意授权”。如下:

完成授权后,再点击立即试用,完成产品试用开通流程,等待几分钟,容器服务创建完成,前往容器服务控制台。如下:

在集群列表,在服务更多选项中,点击“迁移至Pro版”。如下:

集群迁移至Pro版涉及到收费,新手请认真阅读注意事项。如下:

确认无误后,点击立即开通。如下:

点击立即开通后,再次回到迁移至Pro弹窗页,点击确定。如下:

等待几分钟,迁移完成后。如下:

此时回到集群列表,可以看到集群类型变成了Pro版。如下:

至此,产品试用已经开通成功。

场景体验

基于AI套件微调宝可梦风格StableDiffusion

首先前往资源编排ROS控制台,在页面设置配置项,单击创建。或者点击一键配置模板链接,快速开始创建。选择可用区,设置节点登录密码,单击确定。如下:

创建过程中,打开自动刷新,将每隔5秒自动刷新一次,方便观察资源创建情况。如下:

资源栈信息页签中,显示状态创建成功,表示快速创建成功。如下:

返回容器服务控制台,在左侧导航栏选择集群。在集群列表页面,单击在资源栈创建的集群sd-fine-tune。如下:

在左侧导航栏,选择应用 > 云原生AI套件。在云原生AI套件页面,单击开通服务。如下:

开通服务后,在云原生AI套件页面,单击一键部署。如下:

在部署页面的交互方式区域,选择控制台 > AI套件控制台,弹出提示对话框。如下:

 

提示对话框中,单击如下图中的授权策略链接跳转至RAM访问控制台。如下:

权限管理页签中,单击新增授权。如下:

新增授权页面,单击自定义策略,然后单击新建权限策略。如下:

创建权限策略页面,单击脚本编辑,将下列json复制到策略文档部分,单击继续编辑基本信息。如下:

{
"Version": "1",
"Statement": [
    {
"Action": [
"ecs:DescribeInstanceAttribute",
"ecs:DescribeInstances"      ],
"Resource": "*",
"Effect": "Allow"    },
    {
"Action": [
"log:GetProject",
"log:GetLogStore",
"log:GetConfig",
"log:GetMachineGroup",
"log:GetAppliedMachineGroups",
"log:GetAppliedConfigs",
"log:GetIndex",
"log:GetSavedSearch",
"log:GetDashboard",
"log:GetJob",
"ecs:DescribeInstances",
"ecs:DescribeSpotPriceHistory",
"ecs:DescribePrice",
"eci:DescribeContainerGroups",
"eci:DescribeContainerGroupPrice",
"log:GetLogStoreLogs",
"ims:CreateApplication",
"ims:UpdateApplication",
"ims:GetApplication",
"ims:ListApplications",
"ims:DeleteApplication",
"ims:CreateAppSecret",
"ims:GetAppSecret",
"ims:ListAppSecretIds",
"ims:ListUsers"      ],
"Resource": "*",
"Effect": "Allow"    },
    {
"Action": [
"cr:GetAuthorizationToken",
"cr:ListInstanceEndpoint",
"cr:PullRepository",
"cr:GetInstanceVpcEndpoint"      ],
"Resource": "*",
"Effect": "Allow"    }
  ]
}

基本信息区域,输入名称,此名称需要以k8sWorkerRolePolicy-开头(例如:k8sWorkerRolePolicy-sd-fine-tune),然后单击确定。如下:

返回如下页面,表示已成功创建权限策略。如下:

回到新增授权页面,单击刷新权限策略,单击已创建的自定义权限策略,单击确定。如下:

返回AI套件控制台,单击授权检测。如果授权成功,授权状态显示为已授权,且确定按钮可用。如下:

在提示对话框中,设置运维控制台访问方式开发控制台访问方式,这里选择公网域名访问服务,然后单击确定。如下:

选择控制台数据存储方式。选中控制台后,在部署页面交互方式下方会出现控制台数据存储,这里选择可以选择集群内置MySQL。根据下图检查所需组件已勾选,并单击部署云原生AI套件。如下:

当界面各组件如下图所示状态时,表示云原生AI套件已完成部署。如下:

等待运维控制台准备就绪后,单击运维控制台,进入云原生AI套件运维控制台页面。如下:

运维控制台页面,选择用户 > 用户列表,查看到默认创建的用户,单击复制并记录该用户信息的登录Token。如下:

等待开发控制台准备就绪后,单击开发控制台。如下:

选择K8s token方式登录,并输入已记录的用户登录Token,单击Login登录开发控制台。如下:

 

在左侧导航栏中,选择Notebook,在Notebook页面右上角,单击创建Notebook,创建新的Notebook环境。如下:

在弹出的配置页面,配置如下信息,然后单击创建Notebook。如下:

配置完成后,在返回页面中可以看到已创建的Notebook实例状态。如下:

等待Notebook实例变为Running状态后,单击Notebook实例的名称,打开JupyterLab页面。单击Notebook区域下的Python3,在环境中创建一个Notebook文件。如下:

准备stable-diffusion fine-tune环境,在该.ipynb文件中输入执行。命令如下:

#安装diffusers及模型微调需要的依赖!pipconfigsetglobal.index-urlhttps://pypi.tuna.tsinghua.edu.cn/simple!pipinstalltransformers==4.25.1!pipinstalldiffusers==0.18.2!pipinstallaccelerate==0.18.0torchvision==0.15.2datasets==2.13.1ftfy==6.1.1tensorboard==2.13.0Jinja2==3.0.1#下载训练需要的模型文件和数据集!wgethttps://yunqi-lab.oss-cn-hangzhou.aliyuncs.com/stable-diffusion/stable-diffusion-v1-5.tar!tar-xvfstable-diffusion-v1-5.tar!wgethttps://yunqi-lab.oss-cn-hangzhou.aliyuncs.com/stable-diffusion/pokemon-blip-captions.tar!tar-xvfpokemon-blip-captions.tar!wgethttps://yunqi-lab.oss-cn-hangzhou.aliyuncs.com/stable-diffusion/train_text_to_image_lora.py#浏览用于训练的数据集中的图片fromdatasetsimportload_datasetdataset=load_dataset("./pokemon-blip-captions/")
# 查看数据集中的第一张图片dataset['train'][0]['image']
#进行模型微调(Fine-tune)训练!acceleratelaunch--mixed_precision="fp16"train_text_to_image_lora.py \
--pretrained_model_name_or_path="./stable-diffusion-v1-5" \
--dataset_name="./pokemon-blip-captions" \
--dataloader_num_workers=8 \
--resolution=512--center_crop--random_flip \
--train_batch_size=1 \
--gradient_accumulation_steps=4 \
--max_train_steps=200 \
--learning_rate=1e-04 \
--max_grad_norm=1 \
--lr_scheduler="constant"--lr_warmup_steps=0 \
--output_dir="sd-pokemon-model-lora" \
--checkpointing_steps=500 \
--validation_epochs=25 \
--validation_prompt="Totoro" \
--seed=1337#下载webui仓库!gitclonehttps://gitcode.net/mirrors/AUTOMATIC1111/stable-diffusion-webui.git!cdstable-diffusion-webui&&gitcheckoutf865d3e11647dfd6c7b2cdf90dde24680e58acd8#将训练好的lora模型转化为webui可识别的safetensors格式!wgethttps://yunqi-lab.oss-cn-hangzhou.aliyuncs.com/stable-diffusion/convert-to-safetensors.py!pythonconvert-to-safetensors.py--file='sd-pokemon-model-lora/pytorch_lora_weights.bin'!mkdirstable-diffusion-webui/models/Lora!cpsd-pokemon-model-lora/pytorch_lora_weights_converted.safetensorsstable-diffusion-webui/models/Lora/pokemon_lora_weights.safetensors#下载base model!wgethttps://yunqi-lab.oss-cn-hangzhou.aliyuncs.com/stable-diffusion/v1-5-pruned-emaonly.safetensors!mvv1-5-pruned-emaonly.safetensorsstable-diffusion-webui/models/Stable-diffusion/v1-5-pruned-emaonly.safetensors#下载WebUI所需依赖!mkdir-pstable-diffusion-webui/repositories!wgethttps://yunqi-lab.oss-cn-hangzhou.aliyuncs.com/stable-diffusion/repositories.tar!tar-xfrepositories.tar-Cstable-diffusion-webui/repositories#启动WebUI!cdstable-diffusion-webui&&python-mvenv--system-site-packages--symlinksvenv!cdstable-diffusion-webui&& \
sed-i's/can_run_as_root=0/can_run_as_root=1/g'webui.sh&& \
  ./webui.sh--no-download-sd-model--xformers

Stable-diffusion-webui启动后,通过http://127.0.0.1:7860访问Webui界面。在Lora版面下,选择刚刚微调训练好的Lora模型(pokemon_lora_weights),点击该Lora模型后,Prompt输入框中会自动添加如下文本: lora:pokemon_lora_weights:1。如下:

至此,一个基于云原生AI套件的应用就完成了部署。虽然部署过程很复杂,但一通操作下来,收获还是蛮大的。

  • 在部署AI套件的过程中,遇到了运维控制台和开发控制台部署不成功的情况,异常报错为 failed to create resource: Internal error occurred: failed calling webhook。经过百度得知,我刚开始使用yaml的方式创建nginx-ingress,之后删除了它创建的命名空间以及 clusterrole and clusterrolebinding ,但是没有删除ValidatingWebhookConfiguration ingress-nginx-admission,这个ingress-nginx-admission是在yaml文件中安装的。当我再次使用helm安装nginx-ingress之后,创建自定义的ingress就会报这个错误。通过控制台执行kubectl delete -A ValidatingWebhookConfiguration ingress-nginx-admission,再次部署即可部署成功。
  • 还有一个问题是运维控制台和开发控制台部署时间过长,从点击一键部署开始过了1小时才完成,期间看不到任何异常日志和告警,对于付费实例来说,体验非常不友好。

体验总结

  • 产品文档方面:(1)文档的覆盖范围:文档可能没有涵盖所有特性和功能。一些高级特性或附加功能可能没有在文档中详细说明,导致用户在某些情况下无法找到所需的信息。(2)文档的详细程度:对于某些复杂的功能或步骤,文档可能没有提供足够的细节或例子。这使得用户可能无法理解如何正确地使用这些特性。(3)文档的准确性:尽管文档可能提供了大量的信息,但某些部分可能存在错误或不一致。这可能会使信息变得不可靠,使用户难以理解和应用。(4)文档的组织结构:文档可能没有清晰的导航或组织结构,使得用户在查找特定信息时变得困难。一个清晰、一致的目录和索引可以帮助用户更快地找到所需的信息。(5)代码示例和最佳实践:虽然文档可能对产品的工作方式进行了详细的描述,但提供相关的代码示例和最佳实践是有帮助的。这可以使用户更好地理解如何在实际开发中应用产品特性。(6)术语和命名约定:文档中使用的术语和命名约定可能与用户的行业标准或习惯不同。提供一个术语表和命名约定的解释可以帮助用户更好地理解和应用这些概念。(7)用户社区和反馈:建立一个活跃的社区并接收用户反馈可以帮助发现文档中的不足并进行改进。社区可以为新手和高级用户提供一个交流和学习的平台,也可以提供额外的资源,如教程、案例研究和最佳实践。
  • 产品能力方面:(1)资源运维管理:ACK 提供了一套完整的资源管理解决方案,可以方便地进行资源的分配、管理和监控。它支持多种资源类型,包括 CPU、内存、存储等,并提供了灵活的资源调度策略,能够满足多样化的业务需求。(2)AI 任务调度和弹性伸缩:ACK 提供了强大的任务调度和弹性伸缩功能,可以自动化地进行任务分配和资源扩展。它支持多种调度策略,如定时、事件触发等,并能够根据任务需求动态地调整资源规模,确保 AI 任务的稳定运行。(3)数据访问加速:ACK 提供了一系列数据加速技术,包括数据压缩、缓存、预取等,可以显著提升数据访问速度。它支持多种数据源类型,如本地、云存储、数据库等,并可自定义加速策略,适应不同的业务场景。(4)工作流编排:ACK 的工作流编排功能可以帮助用户定义、管理和执行复杂的工作流程。它支持多种编排模式,如串行、并行、条件分支等,并能够灵活地配置任务依赖关系和执行顺序,以满足各种业务需求。(5)大数据服务集成:ACK 提供了丰富的数据集成功能,可以方便地与各类大数据平台进行集成。它支持多种数据传输协议和格式,如 Flink、Kafka、CSV 等,并可自定义数据转换逻辑,实现高效、可靠的数据传输。(6)AI 作业生命周期管理:ACK 的 AI 作业管理功能可以帮助用户定义、执行和监控 AI 作业的生命周期。它支持多种作业类型,如批处理、流处理、机器学习等,并能够灵活地配置作业执行计划和监控策略,以确保 AI 作业的高效运行。(7)AI 制品管理:ACK 提供了一整套 AI 制品管理系统,可以有效地管理和追踪 AI 制品的整个生命周期。它支持多种制品类型,如模型、代码、数据集等,并可自定义制品版本控制和发布流程,以确保 AI 制品的安全和一致性。(8)统一运维:ACK 提供统一的运维管理平台,可以集中管理和监控多个设备和系统。它支持多种设备和系统类型,如服务器、网络设备、数据库等,并能够自定义运维流程和报警机制,提高运维效率和管理水平。(9)AI 数据集管理:ACK 的数据集管理功能可以帮助用户方便地创建、标注、版本控制和检索 AI 数据集。它支持多种数据格式,如 CSV、JSON、图片等,并能够自定义数据预处理和标注逻辑,以满足不同的业务需求。(10)AI 模型开发、训练、评测:ACK 提供了一站式的 AI 模型开发环境,支持从数据准备、模型设计、训练到评测的全过程。它提供了丰富的算法库和工具链,可以帮助用户快速构建和优化 AI 模型,提高模型准确率和性能。(11)模型推理服务:ACK 的模型推理服务可以帮助用户将训练好的模型部署到生产环境,并提供实时或批量推理服务。它支持多种推理模式,如在线、离线、多实例等,并能够灵活地配置服务质量和安全策略,确保模型推理的可靠性和性能。
  • 产品控制台方面:(1)展示友好性:ACK 控制台的界面设计简洁明了,使用了清晰的图标和直观的布局,使得用户可以快速找到所需的功能和信息。此外,控制台提供了多语言支持,可以方便地切换到不同的语言版本,满足不同地区用户的需求。(2)操作流畅性:ACK 控制台在操作流畅性方面表现良好,用户可以快速地在不同页面和功能之间切换。此外,控制台支持批量操作和快捷键操作,进一步提高用户的工作效率。(3)提示信息完整性:控制台在提示信息方面做得不错,对于每个操作都有完整的提示和帮助文档,使用户能够清楚地了解每个功能的用途和操作步骤。然而,在某些情况下,提示信息可能过于复杂或冗长,使用户难以快速了解核心信息。
  • 产品集成方面:(1)集成文档和教程:当前, ACK、Prometheus 和 ACK 云原生 AI 套件之间的集成文档可能不够完善,或者存在不一致的情况。某些用户可能难以快速了解如何进行集成,以及集成的最佳实践。因此,提供更为详细、清晰的集成文档和教程将有助于提升用户体验。(2)统一的接口管理:尽管 ACK、Prometheus 和 ACK 云原生 AI 套件之间的集成在技术上可能没有问题,但用户可能会发现,由于接口管理的不统一,导致集成过程中出现一些不必要的困扰。例如,接口版本不兼容、接口调用方式不统一等问题。因此,对接口进行统一管理,确保接口的一致性和易用性也是提升集成体验的关键。(3)自动化的集成测试:在开发过程中,由于 ACK、Prometheus 和 ACK 云原生 AI 套件之间的集成可能涉及到多个团队和项目,因此确保集成的正确性可能会成为一个挑战。自动化的集成测试可以大大减少集成过程中出现的错误和问题,提高集成的效率和准确性。(4)可视化的集成管理界面:对于大型项目或企业级应用,管理和监控 ACK、Prometheus 和 ACK 云原生 AI 套件之间的集成可能是一项重要的任务。提供可视化集成管理界面,使得用户可以方便地监控集成的状态、性能和错误信息,将极大地提升集成的可靠性和用户体验。(5)灵活的配置和扩展性:随着业务需求和技术发展的不断变化, ACK、Prometheus 和 ACK 云原生 AI 套件之间的集成可能需要不断地进行修改和扩展。因此,提供灵活的配置选项和扩展接口,使得用户可以根据自身需要进行定制和扩展,也是提升集成体验的重要方面。

在体验 ACK 云原生 AI 套件的过程中,我对其提供的功能和能力有了深入的了解。就我看来,ACK 云原生 AI 套件在许多方面都能满足实际生产业务场景的需求。

首先,从资源运维管理到模型推理服务,ACK 云原生 AI 套件提供了一套完整的解决方案,几乎覆盖了AI生产流程的所有环节。其强大的功能可以帮助企业级用户轻松应对复杂的业务需求,提高生产效率。

其次,ACK 云原生 AI 套件的控制台展示友好,操作流程流畅,提示信息完整,进一步提高了使用效率。这些特性使其在用户中获得了良好的口碑。

然而,尽管 ACK 云原生 AI 套件在很多方面表现出色,但我也注意到了一些仍需改进的地方。

  1. 尽管 ACK 云原生 AI 套件提供了大量的功能和工具,但对于某些特定的业务场景,可能需要额外的定制化支持。这可能涉及到更深入的二次开发或特定的业务解决方案,这是当前产品能力可能无法完全解决的。
  2. 在某些情况下,产品的文档可能不足以覆盖所有特性和功能的使用细节。这可能导致用户在某些情况下无法完全理解或正确使用某些功能,需要更深入的指导和帮助。
  3. 在全球化的背景下,尽管 ACK 云原生 AI 套件支持多种语言,但在某些特定领域,可能需要提供更深入的本地化支持。
  4. 在数据安全和合规性方面,尽管 ACK 云原生 AI 套件提供了一些基本的功能和工具,但在处理敏感数据或需要高度合规性的场景中,可能需要提供更强大的数据加密和安全控制功能。
  5. 在模型推理服务方面,尽管 ACK 云原生 AI 套件提供了实时和批量推理服务,但对于大规模、高并发的推理场景,可能需要提供更高效的并行处理和负载均衡功能。

综上所述,尽管 ACK 云原生 AI 套件已经具有强大的功能和优秀的用户体验,但仍有一些特定场景和需求需要进一步的产品改进和定制化支持。这可能涉及到更深入的二次开发、文档完善、本地化支持、数据安全增强以及模型推理服务的优化等方面。

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
24天前
|
Kubernetes Cloud Native 云计算
云原生入门:从Docker到Kubernetes的旅程
【10月更文挑战第2天】本文将带你走进云原生的世界,从基础的Docker容器技术开始,逐步深入到Kubernetes集群管理。我们将通过实际代码示例,探索如何利用这些工具构建、部署和管理现代云应用。无论你是初学者还是有经验的开发者,这篇文章都将为你提供宝贵的知识和技能,让你在云原生领域迈出坚实的一步。
68 5
|
4天前
|
Kubernetes Cloud Native 开发者
云原生技术入门:Kubernetes和Docker的协作之旅
【10月更文挑战第22天】在数字化转型的浪潮中,云原生技术成为推动企业创新的重要力量。本文旨在通过浅显易懂的语言,引领读者步入云原生的世界,着重介绍Kubernetes和Docker如何携手打造弹性、可扩展的云环境。我们将从基础概念入手,逐步深入到它们在实际场景中的应用,以及如何简化部署和管理过程。文章不仅为初学者提供入门指南,还为有一定基础的开发者提供实践参考,共同探索云原生技术的无限可能。
16 3
|
2天前
|
运维 Kubernetes Cloud Native
云原生入门:Kubernetes和容器化的未来
【10月更文挑战第23天】本文将带你走进云原生的世界,探索Kubernetes如何成为现代软件部署的心脏。我们将一起揭开容器化技术的神秘面纱,了解它如何改变软件开发和运维的方式。通过实际的代码示例,你将看到理论与实践的结合,感受到云原生技术带来的革命性影响。无论你是初学者还是有经验的开发者,这篇文章都将为你开启一段新的旅程。让我们一起踏上这段探索之旅,解锁云原生技术的力量吧!
|
8天前
|
人工智能 运维 Cloud Native
云原生开源开发者沙龙丨AI 应用工程化专场杭州站邀您参会
云原生开源开发者沙龙 AI 原生应用架构专场,邀您一起交流,探索 AI 原生应用的工程化落地!
|
6天前
|
人工智能 Cloud Native Java
云原生技术深度解析:从IO优化到AI处理
【10月更文挑战第24天】在当今数字化时代,云计算已经成为企业IT架构的核心。云原生作为云计算的最新演进形态,旨在通过一系列先进的技术和实践,帮助企业构建高效、弹性、可观测的应用系统。本文将从IO优化、key问题解决、多线程意义以及AI处理等多个维度,深入探讨云原生技术的内涵与外延,并结合Java和AI技术给出相应的示例。
27 1
|
10天前
|
Kubernetes Cloud Native 开发者
探秘云原生计算:Kubernetes与Docker的协同进化
在这个快节奏的数字时代,云原生技术以其灵活性和可扩展性成为了开发者们的新宠。本文将带你深入了解Kubernetes和Docker如何共同塑造现代云计算的架构,以及它们如何帮助企业构建更加敏捷和高效的IT基础设施。
|
18天前
|
人工智能 Cloud Native 安全
从云原生到 AI 原生,网关的发展趋势和最佳实践
本文整理自阿里云智能集团资深技术专家,云原生产品线中间件负责人谢吉宝(唐三)在云栖大会的精彩分享。讲师深入浅出的分享了软件架构演进过程中,网关所扮演的各类角色,AI 应用的流量新特征对软件架构和网关所提出的新诉求,以及基于阿里自身实践所带来的开源贡献和商业能力。
|
17天前
|
Kubernetes 安全 Cloud Native
云上攻防-云原生篇&K8s安全-Kubelet未授权访问、API Server未授权访问
本文介绍了云原生环境下Kubernetes集群的安全问题及攻击方法。首先概述了云环境下的新型攻击路径,如通过虚拟机攻击云管理平台、容器逃逸控制宿主机等。接着详细解释了Kubernetes集群架构,并列举了常见组件的默认端口及其安全隐患。文章通过具体案例演示了API Server 8080和6443端口未授权访问的攻击过程,以及Kubelet 10250端口未授权访问的利用方法,展示了如何通过这些漏洞实现权限提升和横向渗透。
云上攻防-云原生篇&K8s安全-Kubelet未授权访问、API Server未授权访问
|
22天前
|
Kubernetes Cloud Native Docker
云原生入门:Kubernetes和Docker的协同之旅
【10月更文挑战第4天】在这篇文章中,我们将通过一次虚拟的旅行来探索云原生技术的核心——Kubernetes和Docker。就像乘坐一艘由Docker驱动的小船启航,随着波浪(代码示例)起伏,最终抵达由Kubernetes指挥的宏伟舰队。这不仅是一段技术上的旅程,也是理解现代云架构如何支撑数字世界的冒险。让我们扬帆起航,一探究竟!
|
27天前
|
Kubernetes Cloud Native 云计算
云原生时代的技术演进:Kubernetes与微服务架构的完美融合
随着云计算技术的飞速发展,云原生概念逐渐深入人心。本文将深入探讨云原生技术的核心——Kubernetes,以及它如何与微服务架构相结合,共同推动现代软件架构的创新与发展。文章不仅剖析了Kubernetes的基本工作原理,还通过实际案例展示了其在微服务部署和管理中的应用,为读者提供了一条清晰的云原生技术应用路径。
41 2

热门文章

最新文章

相关产品

  • 容器服务Kubernetes版
  • 推荐镜像

    更多