基于K8s、NAS、GitLab、Jenkins的持续集成交付容器环境最佳实践
本文介绍如何在1小时内,通过阿里云容器ACK服务和文件存储NAS服务搭建一个简单弹性的持续集成交付容器环境。在完成本文的所有操作后,您将获得一个基于ACK的完整的gitlab和jenkins平台,jenkins环境的worker节点可以弹性按需生成。另外我们还基于gitlab和jenkins实现一个完整K8s网站应用的pipeline,包含日常、预发、线上三个阶段,jenkins的workspace基于NAS,持久存储maven库和pipeline代码,实现增量的构建,加速极速集成交付的过程。
阿里云基于Cilium的高性能云原生网络
你知道吗,这个方案基于Cilium & eBPF来实现。在此之前,Google的GKE和Anthos也宣布基于Cilium+eBPF实现了新的容器网络数据面V2方案。但阿里云的方案会有所不同,阿里云采用Terway IPVLAN+Cilium的eBPF结合的方式。
Docker——理解好镜像和容器的关系
Docker——理解好镜像和容器的关系镜像也是 docker 的核心组件之一,镜像时容器运行的基础,容器是镜像运行后的形态。前面我们介绍了容器的用法,今天来和大家聊聊镜像的问题。 本文是本系列的第四篇,阅读前面文章有助于更好的理解本文: 1.Docker 入门及安装[Docker 系列-1] 2.Docker 容器基本操作[Docker 系列-2] 3.Docker 容器高级操作[Docker 系列-3] 总体来说,镜像是一个包含程序运行必要以来环境和代码的只读文件,它采用分层的文件系统,将每一层的改变以读写层的形式增加到原来的只读文件上。
阿里云Kubernetes服务上从零搭建GitLab+Jenkins+GitOps应用发布模型的实践全纪录
阿里云Kubernetes服务上从零搭建GitLab+Jenkins+GitOps应用发布模型的实践全纪录
云原生的新思考,为什么容器已经无处不在了
阿里云容器服务总监易立表示:“云原生不但可以很好的支持互联网应用,也在深刻影响着新的计算架构、新的智能数据应用。以容器、服务网格、微服务、Serverless为代表的云原生技术,带来一种全新的方式来构建应用。”
阿里云容器Kubernetes监控(四) - 使用钉钉实现Kubernetes监控告警
前言 容器应用的监控和传统应用的监控有很大的不同,在本系列的前面几篇文章中提到了关于自顶向下的传统监控策略以及在容器中常用的自底向上的反向监控策略与问题以及阿里云是如何通过数据链路与逻辑链路分离的方式解决上述问题的,文章直达连接。
浅析Kubernetes StatefulSet
本文介绍了StatefulSet和Deployment的区别,最佳实践,如何理解稳定的持久化存储、网络标识,StatefulSet的Pod管理策略,Node网络异常等情况下该如何处理,部署和伸缩时与Deployment的区别等内容。
容器网络Calico进阶实践 | 褚向阳
作者分享作为使用者看到的 Calico 的变化(包括组件、文档和 calicoctl );Demo 一些简单的例子,会和 MacVLAN 做一下对比说明原理;总结下适合 Calico 的使用场景。
使用ACK推理网关基于域名路由到不同模型服务
本文介绍如何在ACK推理网关中通过Gateway API配置基于不同域名的路由规则,实现将请求按域名分发至qwen和deepseek等不同模型服务,并提供完整的操作步骤与测试示例。
利用服务网格实现全链路mTLS(二):通过出口网关访问外部mTLS服务
阿里云服务网格(Service Mesh,简称ASM)提供了一个全托管式的服务网格平台,兼容Istio开源服务网格,简化服务治理,包括流量管理、服务间通信安全及网格可观测性。ASM出口网关统一管理网格内的出口流量,实现全链路加密通信与精细访问控制。本文介绍如何配置ASM出口网关以管理出口流量并发起mTLS通信,涉及配置ServiceEntry、创建出口网关、设置虚拟服务及目标规则等步骤,最终实现安全可控的mTLS服务访问。
阿里云 ACK 容器服务评测
在现代企业的数字化转型过程中,容器化技术逐渐成为提高应用部署效率、增强系统弹性和灵活性的关键手段。阿里云的容器服务 Kubernetes 版(ACK)是一个完全托管的 Kubernetes 容器管理服务,旨在帮助企业轻松实现应用的容器化管理和部署。本文将对阿里云 ACK 容器服务的核心功能、性能表现及实际使用体验进行评测,帮助读者更好地理解这一产品。
上云业务的k8s容器排障与思考
本文主要讲述了在完成业务上云后,面临因业务请求量激增导致的系统复杂故障和挑战。作者通过排查分析,发现了一个长时间处于“进行中”状态的异常任务,客户端(APP2)进程卡死,而服务端(APP3)进程正常结束。进一步分析发现,问题出在kube-proxy代理的会话超时机制,由于请求处理延迟,kube-proxy清理了会话记录,导致服务端回包异常,客户端无法识别,从而形成进程假死。 最后,作者强调了在成本控制背景下,通过分析流量增长原因、优化技术架构和调整运营策略来改善系统性能和稳定性的必要性。
容器服务Kubernetes版产品使用合集之集群节点和 pod 实现自动扩缩容如何解决
容器服务Kubernetes版,作为阿里云提供的核心服务之一,旨在帮助企业及开发者高效管理和运行Kubernetes集群,实现应用的容器化与微服务化。以下是关于使用这些服务的一些建议和合集,涵盖基本操作、最佳实践、以及一些高级功能的使用方法。
nginx-ingress通过ipv6暴露服务,并在nginx ingress日志中记录客户端真实ipv6的ip地址
本文主要通过阿里云提供的clb和nlb来实现,建议是提前创建好双栈的vpc和vsw(使用clb可以不用双栈vpc和vsw)
Docker命令集大全(Docker命令,一篇搞定)
【1月更文挑战第12天】 一、Docker容器命令: 二、Docker镜像命令 三、重启Docker命令 四、Docker数据卷命令 五、挂载数据卷
Koordinator 助力云原生应用性能提升,小红书混部技术实践
本文基于 2023 云栖大会上关于 Koordinator 分享的实录,介绍小红书通过规模化落地混部技术来大幅提升集群资源效能,降低业务资源成本。
【服务网格】最佳实践在哪里-1:全链路灰度
作为完全兼容社区Istio的服务网格产品,服务网格ASM针对全链路灰度场景提出了自己的思考,并针对性地设计了对应的流量标签方案,来解决上述全链路灰度实现方案中的痛点问题。
基于SpringCloud体系实现的一套支持云原生的分布式微服务架构,提供OAuth2/JWT权限认证、分布式事务、灰度、限流、链路追踪等功能,支持Docker容器化部署、镜像交付、K8S容器编排
lion是基于Spring Cloud体系实现的一套支持云原生的分布式微服务架构,为了让中小型公司解决当下技术瓶颈,快速将现有应用服务架构拆分改造为分布式微服务架构,进入 All-in-Cloud 时代,只需在本架构上进行相关业务开发即可,大大减少了分布式微服务架构的门槛,仅在本框架上做"减法"的目的,使架构师及开发人员不必过多的关注架构本身,只需专注于业务开发
Docker 多容器编排Swarm(六)
Docker Swarm 和 Docker Compose 一样,都是 Docker 官方容器编排项目,但不同的是,Docker Compose 是一个在单个服务器或主机上创建多个容器的工具,而 Docker Swarm 则可以在多个服务器或主机上创建容器集群服务,对于微服务的部署,显然 Docker Swarm 会更加适合。
docker笔记:docker容器通信参数 --link参数介绍
同一个宿主主机上的多个docker容器之间如果需要进行通信,第一种最容易想到的方式就是使用容器自身的ip地址、宿主主机的ip+容器暴露出的端口号来通信,我们知道默认情况下docker重新run后,对应的IP地址就会改变,这样如果两个容器之间通信就会变得非常麻烦,每次都要修改通信的IP地址。这个时候 --link参数就派上大用场了,它会给要链接的容器设定一个通信的别名,即使重启后IP地址发生了改变,依然可以正常通信。
一文解读 Linux 主线内核首个原生支持容器镜像分发方案
容器化是最近几年 DevOps 界流行的趋势,通过业务的容器化我们将创建一个完全打包、自包含的计算环境,让软件开发人员能够更加快速地创建和部署自己的应用程序。然而长期以来,由于镜像格式的限制,容器启动镜像的加载是很慢的(相关背景细节可以参考“容器技术之容器镜像篇”)。
如何删除镜像、容器和数据卷?几个值得收藏的docker命令(上)
在docker的实践过程中,如果没有注意docker对磁盘的占用,在某一天你可能发现磁盘空间已经被docker一点点吃掉了。那么今天给大家介绍几个清理docker镜像、容器和数据卷的常用命令。
【小家Spring】控制Spring IoC容器对Bean(含@Configuration配置类)的加载顺序(@DependsOn注解的使用)
【小家Spring】控制Spring IoC容器对Bean(含@Configuration配置类)的加载顺序(@DependsOn注解的使用)
云效+ACK 构建容器云 DevOps 平台 最佳实践
最佳实践目前已覆盖23类常用场景,已发布200多篇最佳实践,这其中涉及100款以上阿里云产品的最佳使用场景。目前,最佳实践已成功帮助大量客户实现自助上云。本篇主要讲述容器应用DevOpsforACK集群最佳实践。DevOps的目的是构建一种文化和环境,使构建,测试,发布软件更加快捷,频繁和可靠。而到了容器时代,需要部署的机器不但量更大,变化更剧烈,有的甚至需要根据条件自动升缩,为了满足企业敏捷的需求,持续部署也成了必须,本方案使用云效完成容器应用(小程序后端服务)的自动化构建和持续部署。
Python Qt GUI设计:QTabWidget、QStackedWidget和QDockWidget容器控件类(提升篇—2)
Python Qt GUI设计:QTabWidget、QStackedWidget和QDockWidget容器控件类(提升篇—2)
容器镜像安全扫描之Trivy
Trivy是一种适用于CI的简单而全面的容器漏洞扫描程序。软件漏洞是指软件或操作系统中存在的故障、缺陷或弱点。Trivy检测操作系统包(Alpine、RHEL、CentOS等)和应用程序依赖(Bundler、Composer、npm、yarn等)的漏洞。Trivy很容易使用,只要安装二进制文件,就可以扫描了。扫描只需指定容器的镜像名称。与其他镜像扫描工具相比,例如Clair,Anchore Engine,Quay相比,Trivy在准确性、方便性和对CI的支持等方面都有着明显的优势。
长文解析:作为容器底层技术的半壁江山, cgroup如何突破并发创建瓶颈?
io_uring 作为一种新型高性能异步编程框架,代表着 Linux 内核未来的方向,当前仍处于快速发展中。阿里云联合 InfoQ 发起《io_uring 介绍及应用实践》的技术公开课,围绕 OpenAnolis 龙蜥社区 Anolis OS 8 全方位解析高性能存储场景。
详解 Flink 容器化环境下的 OOM Killed
本文将解析 JVM 和 Flink 的内存模型,并总结在工作中遇到和在社区交流中了解到的造成 Flink 内存使用超出容器限制的常见原因。由于 Flink 内存使用与用户代码、部署环境、各种依赖版本等因素都有紧密关系,本文主要讨论 on YARN 部署、Oracle JDK/OpenJDK 8、Flink 1.10+ 的情况。