在Kubernetes中部署容器云应用(容器或微服务编排)是一项有挑战性的工作,Helm就是为了简化在Kubernetes中安装部署容器云应用的一个客户端工具。 通过Helm能够帮助开发者定义、安装和升级Kubernetes中的容器云应用。同时,也可以通过Helm进行容器云应用的分享。 ,包含特定的config TKE实践 开启helm应用服务,如图所示: [Snipaste_2019-11-25_18-09-01.png] 在左侧选择helm应用,选择自己的集群,点击申请开通。 确认helm应用开通 [Snipaste_2019-11-25_18-14-23.png] 如上图:我们可以通过查看helm的tiller的部署是否成功来判断集群helm应用是否开通。 确认helm创建应用的结果。 [Snipaste_2019-11-25_18-23-35.png] 在helm界面查看我们创建好的应用,点击进去可以查看详情。
Author: Jimmy Zhang (张浩) K8s中使用传统方式部署应用的挑战 [应用部署示例] 编辑,部署和更新应用的众多资源描述文件心智负担较重 没有统一的视图来看待一个应用的相关资源 缺乏有效机制来管理应用的整个生命周期 无法管理应用的依赖 难以共享和复用现有的应用 什么是Helm Helm是一个应用于K8s的包管理器,类似于YUM或者APT Helm将原生应用程序涉及到的众多K8s资源对象打包成一个所谓的Chart, 以此实现统一的管理 对于应用发布者而言,可以通过Helm来打包应用,管理应用依赖关系,管理应用版本,发布到应用仓库 对于应用使用者而言,使用Helm后无需手动编写Manifests文件,通过简单的操作即可完成对应用的安装 TKE集成Helm的系统架构 [TKE集成Helm的系统架构] 核心实现 gRPC转REST 通过引入appscode/swift项目将Tiller 服务代理为适合控制台的REST接口 Sync转Async 通过开发一个swift的反向代理组件 将某些耗时较多的同步操作异步化 返回特定的结构化数据 反向代理中包装Helm原生接口 维护TKE自定义的业务数据 实现功能 Helm功能的开通 应用的创建,展示
通过腾讯云生态体系的构建,其核心云产品 CODING CD 和腾讯云容器服务 TKE 也实现了技术的融合和产品形态上的打通。 [▲ CODING CD 和腾讯云 TKE 打通后的产品界面] 在万物上云的今天,频繁变更和产品服务稳定变成了天平的两端,规范化的软件发布流程、灰度发布策略可以帮助企业更好的平衡两者。 CD 作为上下游打通的强整合工具系统,无缝对接 Kubernetes 场景及腾讯云弹性伸缩(Auto Scaling),并基于 Spinnaker 能力,在云原生技术栈中实现快速交付,加速并简化云原生应用的部署 [▲ 无缝对接 Kubernetes 场景] [▲ 支持多种部署管道] 腾讯云容器服务 TKE 是基于原生 Kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务。 在云原生的实践之路上,CODING 将携手腾讯云 TKE,面向云原生 DevOps,结合双方团队优势与技术能力,加速企业 IT 变革。
(一)产品概述 腾讯云容器服务(Tencent Kubernetes Engine,TKE)是高度可扩展的高性能容器管理服务,您可以在托管的云服务器实例集群上轻松运行应用程序。 (二)产品优势 腾讯云容器服务 TKE 对比自建容器服务 优势 腾讯云容器服务(TKE) 自建容器服务 简单易用 简化集群管理 腾讯云容器服务提供超大规模容器集群管理、资源调度、容器编排、代码构建,屏蔽了底层基础构架的差异 腾讯云容器服务 TKE 监控对比自建容器监控 腾讯云容器服务监控为容器集群、服务、实例提供数据收集和数据展示功能。 容器服务 TKE 模块:容器服务核心模块,包括集群的增删改查、服务的增删改查等。 模块 功能点 应用构成 支持 TKE 多种服务类型 支持 Kubernetes Deployment、DaemonSet 等多种资源 应用管理 应用支持我的模板、模板市场快速创建 支持更新应用实时对比查看
TKE产品介绍 1.产品介绍 2.产品总体架构 3.产品功能 4.业务交付流程 1.产品介绍 腾讯云容器服务(Tencent Kubernetes Engine,TKE)是高度可扩展的高性能容器管理服务 模块 功能点 应用构成 支持 TKE 多种服务类型支持 Kubernetes Deployment、DamentSet 等多种资源 应用管理 应用支持我的模板、模板市场快速创建支持更新应用实时对比查看应用内服务一键部署 镜像仓库支持查看和使用 TencentHub 镜像仓库支持管理多个镜像命名空间 镜像使用 提供高速的内网通道用于镜像创建服务支持公网上传下载镜像 CI/CD 支持设置私有镜像自动构建支持设置镜像的触发器 4. 如下图所示: 业务交付流程总结: 1.制作Docker基础镜像并推送至TKE平台 2.通过镜像管理功能,将代码打包,生成Docker业务镜像(持续集成) 2.创建TKE集群 3.基于Docker业务镜像 ,在TKE集群上进行容器业务部署(持续交付)
勾选后,会进行以下操作: - 会将数据盘自动挂载到您指定的挂载点,并自动格式化为 ext4 文件系统格式。 - 会将容器存储到挂载点的容器目录。 - 此选项仅对拥有一块数据盘的节点生效。
1.TKE集群网络模式 1.1GlobalRouter 模式 image.png GlobalRouter模式是在每个节点下起一个agent从整个VPC中指定一个子网进行通信和数据的传输。 仅对 部分业务使用 VPC-CNI 模式 如果完全了解并接受 VPC-CNI 的各种限制,并且需要集群内所有 Pod 都用 VPC-CNI 模式,可以创建集群时选择 VPC-CNI 网络插件 2.TKE 推荐使用docker方式,这样可以调用docker api以及命令,如果想对docker做优化也可以执行 3.servie的转发 3.1iptables image.png iptables支持的小场景下应用 4.集群故障定位 4.1pod退出错误码分析 129-255 表示进程因外界中断信号退出,最常见的是 137,表示被 SIGKILL 杀死,可能是 Cgroup OOM,系统 OOM,存 活检查失败或者被其它进程杀死导致 1-128 表示进程主动退出 (只是约定),具体状态码含义取决于应用程序逻辑;有时主动退出也会是 255 状态码: 代码里使 用类似 exit(-1) 时,-1 被自动转成 255,通常状态码为 1
<none> 3m56s v1.16.3-tke.9 172.27.16.15 Ready,SchedulingDisabled <none> 29h v1.16.3-tke .9 172.27.16.3 Ready <none> 4m22s v1.16.3-tke.9 172.27.16.4 Ready master 30h v1.16.3-tke.9 172.27.16.5 Ready <none> 29h v1.16.3-tke <none> 20m v1.16.3-tke.9 172.27.16.4 Ready master 30h v1.16.3-tke.9 172.27.16.5 Ready,SchedulingDisabled <none> 30h v1.16.3-tke.9 172.27.16.7 Ready
TKE实践 在集群中创建两个不同的服务,如图所示: [Snipaste_2019-11-25_16-02-55.png] 在左侧菜单栏选择ingress服务,点击并新建ingress。
VPC在TKE中的应用 登陆集群,查看集群基本信息。如下图: [Snipaste_2019-11-20_16-19-06.png] 标记部分即为我们简历集群时选择的VPC网络。
主要适用于 StatefulSet 创建的有状态应用。 主要适用于 StatefulSet 创建的有状态应用。 使用腾讯云硬盘:腾讯云基于 CBS 扩展的 Kubernetes 的块存储插件。 TKE实践 使用NFS盘 新建NFS文件系统。 在文件系统产品界面,选择对应的地域,新建NFS。 [Snipaste_2019-11-20_17-17-36.png] 在TKE服务中使用NFS,添加数据卷,并挂载到容器。 [Snipaste_2019-11-20_18-11-21.png] 在TKE服务中使用CBS,添加数据卷,并挂载到容器。
腾讯云容器服务(Tencent Kubernetes Engine,TKE)是基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,您可以在托管的云服务器实例集群上轻松运行应用程序 同时腾讯云也提供 弹性容器服务(Elastic Kubernetes Service,EKS)和 边缘容器服务(Tencent Kubernetes Engine for Edge,TKE Edge), 前提条件:用户购买TKE容器服务,开启集群事件日志,请参考操作指南 场景1:一台Node节点出现异常,定位原因 进入TKE容器服务控制台,点击左侧菜单中【集群运维】>【事件检索】。 ---- 以上就是本期TKE事件日志的玩法分析, 如果您有更多有意思的日志实践,欢迎投稿! qrcode_for_gh_039637d20135_344.jpg 往期文章: 【日志服务CLS】CentOs接入笔记 【日志服务CLS】应用工作流ASW接入CLS实践分享 【日志服务CLS】腾讯云Log4j
概念 日志采集 Agent:TKE 用于采集日志信息的 Agent,基于 Fluentd 开发,在集群内以 DaemonSet 的方式运行。 TKE实践 采集容器标准输出日志 日志采集功能支持采集 Kubernetes 集群内指定容器的标准输出日志,用户可以根据自己的需求,灵活的配置采集规则。 kubernetes.pod_name 日志所属 pod 的名字 log 原始日志信息 4、
在熟悉了TKE CVM容器集群的业务优势,现在我们来正式创建TKE CVM集群。 1.创建私有云网络。 2.创建容器集群。 (我这里选择新增,在创建TKE集群时,node节点同时创建好) 计费方式:选择按量计费 Node机型:当 “Node” 选择为 “新增” 时,可选。 节点网络:选择刚刚创建的私有网络即可 机型:我这里选择的是标准型S1 4核4G 系统盘:默认为“本地硬盘50G”,您可以根据机型选择本地硬盘、云硬盘、SSD 云硬盘、高性能云硬盘等。
4、事件响应 苹果注册了一个 Source1 (基于 mach port 的) 用来接收系统事件,其回调函数为 __IOHIDEventSystemClientQueueCallback()。 随后苹果注册的那个 Source1 就会触发回调,并调用 _UIApplicationHandleEventQueue() 进行应用内部的分发。 实际上,start 这个函数的内部会会获取 CurrentRunLoop,然后在其中的 DefaultMode 添加了4个 Source0 (即需要手动触发的Source)。
节点池文档 作用:实现节点动态的扩容缩容。 应该是外部的服务监控k8s集群,外部服务调用k8s的api实现的。 创建节点池 配置参数选择 计费模式选择了按量计费; SSH密钥; 机型配置,不要选择1核1G的; 安全组,系统默认选择了worker的安全组,不需要修改; 数量,创建节点池的时候,创建worker节点的数量,选择了一台; 节点数目范围,根据自己需求,这可以后期调整; 支持的子网,全部勾选了; [创建节点池] 可以新建多个节点池,根据不同的机型 查看节点池 可以看到机型和数量 [查看节点池] 修改
test-config-1 created configmap/test-config-2 created configmap/test-config-3 created configmap/test-config-4
背景: 前几天刚刚测试了一把tke1.18.4:腾讯云TKE1.18初体验 ,今天一看后台有了1.20.6的版本了。满怀欣喜的想升级一下tke集群的。但是仔细一看不支持升级。 问了一下tke的小伙伴,要下个月才能支持版本升级。这点让人体验狠不好。新版本发出了。老版本缺不能升级?让老用户感觉到很是被抛弃的感觉。不知道其他用户是怎么感觉的,反正我是有这样感觉的。 闲话少说,搭建一个新的tke1.20.6的版本体验下有那些不同吧! 创建tke1.20.6集群 1. 依然不行....为了下tke的小伙伴:嗯 我的安全组满了,看了一眼我的安全组规则有70条,貌似满了?不管了先删掉了几条无用的安全组。重新点完成 OK了。发现原来tke是自己会创建安全组的! 4.
目前腾讯云容器服务 TKE (Tencent Kubernetes Engine)[1]已支持在 TKE 集群中的应用使用多种存储服务,包括云硬盘 CBS[2]、文件存储 CFS[3]以及对象存储 COS [4]。 但仍然会有一些问题困扰着大家,比如:TKE 集群中是否支持扩容 CBS 云盘;如果集群跨可用区,如何避免集群中频繁出现挂载(attach)失败;TKE 中是否支持快照功能;我的应用应该选择哪种类型存储; 使用推荐 TKE 集群版本为 1.14+(包含 1.14),推荐使用 CSI 插件 需要在TKE集群中使用 CFS 和 COS 能力,使用 CSI 插件 需要在TKE集群中对 CBS 盘在线扩容和使用快照功能 -a96c-2f284042cf4f csi: driver: com.tencent.cloud.csi.cbs fsType: ext4 volumeAttributes
TKE实践 在容器服务的控制面板点击告警设置选项,选择新建。