服务网格GRPC协议多种编程语言实践-5.GRPC协议Headers网格实践
在服务网格的流量管理和可观测性实现上,Headers发挥着非常关键的作用。相比而言,HTTP协议的Headers实现较为容易,因为HTTP是同步阻塞式的请求响应模式,可以很容易在GET/POST/UPDATE/DELETE方法中定义和使用读写Header的API。GRPC协议的Headers则要复杂一些,各种编程语言在4种不同通信模型中,读写Header的形式的差异化很大,同时还要考虑流式和异步的编程实现。 本篇首先介绍4种编程语言的Headers编程实践,然后讲述在服务网格实践中,GRPC协议Headers的两个重要实践:流量管理和可观测性。
非容器应用与K8s工作负载的服务网格化实践-7 基于ASM的POD和VM可观测性实践
服务网格的可观测性能力是通过Sidecar实现的,对于业务服务源代码来说是近零侵入的。可观测性包括数据采集、数据存储、数据展示和聚合分析。主要有三个维度:Metrics、Logging、Tracing,分别用于可聚合数据、离散事件、请求链路的可观测性。相应地,阿里云生态下,ASM打通了ARMS(https://www.aliyun.com/product/arms)、Log Service(https://www.aliyun.com/product/sls)、TracingAnalysis(https://www.aliyun.com/product/xtrace),供用户使用服务网格的可观
非容器应用与K8s工作负载的服务网格化实践-1 ASM-VM-PROXY的安装
ASM-VM-PROXY是连接ASM和VM的工具,运行在VM节点中,负责与ASM通信获取xDS信息、劫持非容器应用流量并执行网格化操作(比如上报链路追踪数据、请求安全认证等)。为了支持跨操作系统,以docker image的方式分发。 为了演示跨操作系统的能力,本文使用三种最常见的Linux分发版本创建ECS实例。
阿里云服务网格ASM之扩展能力(4):在ASM中实现分布式跟踪
服务网格ASM集成了阿里云链路追踪服务,为分布式应用的开发者提供了完整的调用链路还原、调用请求量统计、链路拓扑、应用依赖分析等能力,可以帮助开发者快速分析和诊断分布式应用架构下的性能瓶颈,提升开发诊断效率。
阿里云服务网格ASM之扩展能力(2):在ASM中支持自定义外部授权
前面的系列文档中介绍了如何创建服务网格ASM实例,并介绍了如何将一个应用示例部署到 ASM 实例中,本文在此基础上介绍如何在ASM中支持自定义外部授权。
阿里云容器服务ACK集群上如何使用ack-etcd-backup-operator定期自动对ETCD集群数据做备份
如果用户在 [阿里云容器服务平台](https://cs.console.aliyun.com) 上创建了独享专有的Kubernetes集群(dedicated kubernetes cluster),那么用户将对集群的管理节点和工作节点享有完全的控制能力,其中Etcd集群是Kubernetes集群中一个十分重要的组件,用于保存集群所有的网络配置和对象的状态信息。 本文旨在介绍如何使用 [a
边缘容器服务:边缘原生应用与实践
本文由阿里云高级技术专家熊鹰分享,希望通过介绍现在阿里云在边缘计算和边缘原生这些技术领域的经验,让大家能了解到现在边缘计算的发展现状、边缘适合的业务场景、以及5G和MEC时代我们对于边缘原生的一些思考。
容器服务 kubernetes 系统组件介绍
容器服务建立 kubernetes 集群后,系统默认建立一批 kubernetes 集群的系统组件与进程,理解他们的部署配置方式和含义,是优化集群,排除 k8s 集群故障的技术基础之一。
docker toolbox环境下 使用阿里云容器镜像加速器
1、启动Docker Quickstart Terminal,等待docker虚拟机启动完毕2、在Docker Quickstart Terminal 命令行输入命令:docker-machine ssh default意思是采用docker-machine命令,以ssh方式,从当前 Docker Quickstart Terminal 窗口登录名称为default的docker虚拟机3、此时窗口进入到了docker虚拟机,docker-machine命令已经失效。
prometheus operator告警规则(一):你的cpu够用吗?
ack-prometheus-operator就像一把瑞士军刀,包含非常丰富的功能,安装后会自动部署prometheus、grafana、alertmanager等组件,并会下发很多的监控相关的规则,包括metric采集规则、告警规则和grafana dashboard。
K8S中手动扩容云盘数据卷
K8S中手动扩容云盘数据卷 介绍: 云盘数据卷扩容包括以下几个部分: 云盘物理空间扩容,需要在云盘控制台操作;文件系统扩容,需要挂载云盘到一个物理节点手动操作;PV、PVC Size更新,需要更新StorageClass、PVC; 注意:扩容云盘前需要为云盘打快照,以预防升级失败导致数据丢失; 云盘目前无法做到在线扩容,需要重启应用才可以实现,可以通过两种方法实现云盘扩容。
阿里云容器服务ACK集群如何使用BYOK创建加密云盘
当您的业务因为安全需求或法规合规要求等原因,需要对存储在云盘上的数据进行加密保护时,您可以在ACK容器集群中使用云盘加密功能,无需构建、维护和保护自己的密钥管理基础设施,即可保护数据的隐私性和自主性。
重磅!容器集群监控利器 阿里云Prometheus 正式免费公测
Prometheus 作为容器生态下集群监控的首选方案,是一套开源的系统监控报警框架。2019 年7月3日,阿里云Prometheus云托管实例正式开始免费公测。针对容器集群监控场景,提供了完整的采集、存储、监控、告警、图表展现的数据监控服务。
CSI 协议规范
CSI 规范 官方文档:https://github.com/container-storage-interface/spec/blob/master/spec.md CSI目标 定义API: 自动化创建/删除数据卷; 从一个节点挂载/卸载数据卷; 在一个节点上Mount/Umount一个卷设备; 使用可挂载/块 数据卷; 本地存储供应者 - LVM 创建、删除快照; 从一个快照恢复数据卷; 推荐细节: 容器部署意见:CAP_SYS_ADMIN,mnt命名空间; CSI介绍 CSI聚焦的中心是容器编排系统(CO)和Plugin之间的协议;插件应该是可以跨CO运行的。
规模化落地云原生,阿里云即将重磅亮相 KubeCon China
2019 年 6 月 24 日至 26 日, 由 Cloud Native Computing Foundation (CNCF) 主办的云原生技术大会 KubeCon + CloudNativeCon + Open Source Summit(上海 )即将在中国上海盛装启幕。
阿里云容器服务ACK 升级亮相,全力保护全球百万级容器的运行安全
点击查看:容器服务 Kubernetes 版点击了解:“阿里云新品发布会频道”立即订阅:阿里云新品发布会·周刊 阿里云ACK是什么? 阿里云容器服务Kubernetes版,简称ACK,支持企业级容器化应用的全生命周期管理,基于原生Kubernetes增强,全面整合阿里云虚拟化、存储、网络和安全能力,提供高性能可伸缩的容器应用管理服务。
深度解读Helm 3: 犹抱琵琶半遮面
自去年年初开始放风Helm v3将要开始开发,到去年年底KubeConn 上海被一堆人追问到底啥时候发版本。今年五月份,Helm v3 终于发布了第一个alpha版本,让我们来一窥新版本的Helm 到底带来了什么。
Docker 容器的网络连接
文章首发于公众号《程序员果果》地址:https://mp.weixin.qq.com/s/DzF-ZwaY4QtlgM32I5wybg 一、Docker 容器的网络基础 docker0(Linux的虚拟网桥) 通过ifconfig查看docker0的网络设备,docker守护进程就是通过docker0为docker的容器提供网络连接的各种服务。
云原生的新思考,为什么容器已经无处不在了
阿里云容器服务总监易立表示:“云原生不但可以很好的支持互联网应用,也在深刻影响着新的计算架构、新的智能数据应用。以容器、服务网格、微服务、Serverless为代表的云原生技术,带来一种全新的方式来构建应用。”
Spark in action on Kubernetes - 存储篇(一)
在上篇文章中,我们分析了Spark Operator内部的机制,今天我们会讨论一个在大数据领域中最重要的话题 - 存储。大数据已经无声无息的融入了每个人的生活中。大到旅游买房,小到外卖打车,都可以看到通过大数据提供数据分析、数据推荐、数据决策的使用场景。
Spark in action on Kubernetes - Spark Operator的原理解析
在上篇文章中,向大家介绍了如何使用Spark Operator在kubernetes集群上面提交一个计算作业。今天我们会继续使用上篇文章中搭建的Playgroud进行调试与解析,帮助大家更深入的理解Spark Operator的工作原理。
Kubernetes Ingress 日志分析与监控的最佳实践
Ingress主要提供HTTP层(7层)路由功能,是目前K8s中HTTP/HTTPS服务的主流暴露方式。为简化广大用户对于Ingress日志分析与监控的门槛,阿里云容器服务和日志服务将Ingress日志打通,只需要应用一个yaml资源即可完成日志采集、分析、可视化等一整套Ingress日志方案的部署。
在Kubernetes集群中通过LocalVolume Provisioner使用本地盘
介绍 阿里云在部分ECS类型中提供了本地盘配置,本地盘具有低时延、高随机IOPS、高吞吐量和高性价比的优势,在一些对性能要求很高的应用中有很大优势。 在Kubernetes系统中使用本地盘可以通过HostPath、LocalVolume等类型的PV使用: HostPath: 卷本身不带有调度信息,如果想对每个pod固定在某个节点上,就需要对pod配置nodeSelector等调度信息; LocalVolume: 卷本身包含了调度信息,使用这个卷的pod会被固定在特定的节点上,这样可以很好的保证数据的连续性。
挂载失败-日志中显示僵尸pod的问题
当节点出现pod挂载不上,且查看节点日志(/var/log/message)发现不断有“Orphaned pod”字段的日志打印出来,如下: Jan 21 03:07:08 abc_k8s_worker01 kubelet: E0121 03:07:08.
推荐6款 Docker 认证的实用免费插件,帮助您轻松监控容器动态!
如今的监控解决方案趋向于跟踪短暂和快速扩展的容器集。合作伙伴的监控解决方案通过 Docker 引擎公开的 API 可以实时收集系统以及 Docker 容器的事件和指标来监控客户的整个基础架构、应用程序和服务的运行状况和性能。
Istio Egress Gateway出口流量管理
缺省状态下,Istio服务网格内的Pod,由于其iptables将所有外发流量都透明的转发给了sidecar,所以这些集群内的服务无法访问集群之外的 URL,而只能处理集群内部的目标。 控制出口流量描述了如何通过ServiceEntry将外部服务暴露给集群内的客户端 本文则通过一个官方的用例解释如.
Docker容器加载宿主机的hosts解析
前言 公司一直在用传统的tomcat下丢war包的架构体系,随着项目的增多、服务器数量的增多、需要为此花费很多时间在不同服务器的系统环境问题上。为了技术的与时俱进和工作的运维效率等方面,笔者引入docker容器部署方式,通过Gitlab+Jenkins+Harbor体系,通过Dockerfile生成自定义镜像并放置Harbor仓库,Jenkins加上自定义Shell脚本(实现拉镜像,启动容器,容器映射端口固定,自定义日志路径)等,基本实现了持续集成的自动化部署。
基于阿里云容器服务监控 Kubernetes集群GPU指标
### 简介 当您在阿里云容器服务中使用GPU ECS主机构建Kubernetes集群进行AI训练时,经常需要知道每个Pod使用的GPU的使用情况,比如每块显存使用情况、GPU利用率,GPU卡温度等监控信息,本文介绍如何快速在阿里云上构建基于Prometheus + Grafana的GPU监控方案。
阿里云Kubernetes容器服务Istio实践之Sidecar自动注入
本文重点介绍在阿里云Kubernetes容器服务中如何启用或者禁用Sidecar自动注入,并分析自动注入Sidecar的原理机制。使用该自动注入能力,可以简化部署应用的逻辑。同时,阿里云Kubernetes容器服务也提供了可配置选型,让用户可以根据自己的需要配置是否启用该能力。
阿里云Kubernetes Service Mesh实践进行时(7): 可观测性分析服务Kiali
本系列文章已经通过一个官方示例演示了如何部署应用到上述Istio环境中,并演示了如何设置智能路由、分布式追踪以及Istio 的遥测数据收集、查询及可视化等功能,也基于此示例演示了如何在Istio中使用故障诊断与检测工具Weave Scope。
【Java入门提高篇】Day18 Java容器类详解(一)Collection接口
今天来看看Java里的一个大家伙,那就是容器。 所谓容器,就是专门用来装对象的东西,如果你学过高数,没错,就跟里面说的集合是一个概念,就是一堆对象的集合体,但是集合类是容器类中的一个子集,为了区别表示,所以还是叫容器类,之后所说的集合类只是容器里的一个子集,之后会有详细介绍。
div中的内容超过容器宽度的问题
问题描述: 排名 参赛选手 月收益 月收益率 在一个div中横向放置了4个inline-block,宽度为百分比,加起来总共是100%。当其中一个inline-block的文字内容超过元素本身的宽度时,发现其他3个inline-block位置会发生改变,但是如果这个inline-block的内容如果为数字或者一整个连续的英文字符串,其他3个inline-block的位置不会发生改变,不过如果这个inline-block的内容为英文段落(单词之间有空格)并且内容超过元素本身的宽度时,其他3个inline-block的位置还是会发生改变。
可爱的 LXD 系统容器
* tag: lxc lxd container linux * date: 2018-04 本文基于 ubuntu 16.04 操作。 ## LXD 是什么 很多人可能不知道 LXD,但可能听说过老牌容器 LXC(远早于 docker)。 [LXC][] 由 [Canonical Ltd][] 和 [Ubuntu][] 开发维护,其灵感可能来自 [OpenVZ][] 等
Kubernetes Ingress Controller 高可靠部署最佳实践
在Kubernetes集群中,Ingress作为集群流量接入层,Ingress的高可靠性显得尤为重要,今天我们主要探讨如何部署一套高性能高可靠的Ingress接入层。
用 Label 控制 Service 的位置 - 每天5分钟玩转 Docker 容器技术(106)
上一节我们讨论了 Service 部署的两种模式:global mode 和 replicated mode。无论采用 global mode 还是 replicated mode,副本运行在哪些节点都是由 Swarm 决定的,作为用户我们有没有可能精细控制 Service 的运行位置呢? 答案是:能,使用 label。