Rancher

Kubernetes Node全解

南笙酒味 提交于 2020-04-06 20:56:18
今晚20:30,Kubernetes Master Class在线培训第四期《企业如何构建CI/CD流水线》即将开播,点击链接: http://live.vhall.com/729465809 即可免费预约注册! 介 绍 Kubernetes在GitHub上拥有超过48,000颗星,超过75,000个commit,拥有以Google为代表的科技巨头公司为主要贡献者。可以说,Kubernetes已迅速掌管了容器生态系统,成为容器编排平台的真正领导者。 Kubernetes提供了诸如部署的滚动和回滚、容器健康检查、自动容器恢复、基于指标的容器自动扩展、服务负载均衡、服务发现(适用于微服务架构)等强大功能。在本文中,我们将讨论Kubernetes重要的基本概念、master节点架构,并重点关注节点组件。 理解Kubernetes及其抽象 Kubernetes是一个开源的编排引擎,用于自动部署、扩展、管理和提供托管容器化应用程序的基础架构。在基础架构级别,Kubernetes集群由一组物理或虚拟机组成,每个机器都以特定角色运行。 Master机器就像是所有业务的大脑,负责编排所有运行在节点机器上的容器。每个节点都配有一个容器运行时。节点接收来自master的指令,然后执行操作来创建pod、删除pod或调整网络规则。 Master组件负责管理Kubernetes集群。它们管理pod的生命周期

Kubernets中获取客户端真实IP总结

无人久伴 提交于 2020-04-06 18:14:22
1. 导言 绝大多数业务场景都是需要知道客户端IP的 在k8s中运行的业务项目,如何获取到客户端真实IP? 本文总结了通行的2种方式 要答案的直接看方式一、方式二和总结 SEO 关键字 nginx ingress客户端真实ip kubernets获取客户端真实ip rke获取客户端真实ip rancher获取客户端真实ip 本文由 www.iamle.com 流水理鱼 原创,wx公众号同名 1.1 流量链路介绍 7层转发链路 Client(客户端) > Nginx > K8s Ingress(Nginx ingress) 4层转发链路 Client(客户端) > 公有云LB > K8s Ingress(Nginx ingress) ps: 实际业务会串联更多层级的转发。WAF、CDN、Api Gateway一般是http 7层转发,LB一般是4层tcp转发 1.2 准备whoami探针 whomai是一个go编写的调试探针工具,回显http头信息 在k8s中部署一个containous/whoami用来作为探针,配置好ingress公网和访问,这样客户端web访问可以看到基本的http头信息,方便调试 kubectl apply -f - <<EOF apiVersion: apps/v1 kind: Deployment metadata: name: whoami

Kubernets中获取客户端真实IP总结

梦想与她 提交于 2020-04-06 13:36:53
1. 导言 绝大多数业务场景都是需要知道客户端IP的 在k8s中运行的业务项目,如何获取到客户端真实IP? 本文总结了通行的2种方式 要答案的直接看方式一、方式二和总结 SEO 关键字 nginx ingress客户端真实ip kubernets获取客户端真实ip rke获取客户端真实ip rancher获取客户端真实ip 本文由 www.iamle.com 流水理鱼 原创,wx公众号同名 1.1 流量链路介绍 7层转发链路 Client(客户端) > Nginx > K8s Ingress(Nginx ingress) 4层转发链路 Client(客户端) > 公有云LB > K8s Ingress(Nginx ingress) ps: 实际业务会串联更多层级的转发。WAF、CDN、Api Gateway一般是http 7层转发,LB一般是4层tcp转发 1.2 准备whoami探针 whomai是一个go编写的调试探针工具,回显http头信息 在k8s中部署一个containous/whoami用来作为探针,配置好ingress公网和访问,这样客户端web访问可以看到基本的http头信息,方便调试 kubectl apply -f - <<EOF apiVersion: apps/v1 kind: Deployment metadata: name: whoami

k8s 部署rancher dashboardsh

泄露秘密 提交于 2020-04-05 21:04:12
人懒, 废话不多. rancher官网针对性太强了. 基本上都是要求rke部署的k8s群集, 承认rancher dashboard还不错, 可以提高开发效率. 但是rke是屎, rke是屎, rke是屎, 重要的事情说三遍. 官网上用helm部署ha的方案测试验证了多次, 均告失败, 实在是不想用docker方案. 所以基于官网的docker方案改写了k8syaml, 用于快速部署rancher, 上文件: vi ./rancher.yaml apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: proxy-clusterrole-kubeapiserver rules: - apiGroups: [""] resources: - nodes/metrics - nodes/proxy - nodes/stats - nodes/log - nodes/spec verbs: ["get", "list", "watch", "create"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: proxy-role-binding-kubernetes

实例演示:如何简化生产中的Pod安全策略?

。_饼干妹妹 提交于 2020-04-05 19:59:38
Pod安全策略对于强化K8S集群安全至关重要。本文将延续之前的文章继续深入介绍Pod安全策略。 首先,简单介绍了如何将Pod与Pod安全策略相关联,并使用RBAC来展示具体步骤。然后介绍如何在Rancher中启用默认的PSP和创建自定义PSP。最后将使用一种工具来简化生产中Pod安全策略的使用,极大提升生产力,赶紧戳文咯~ 本文来自 RancherLabs 在 之前的文章 中,我们演示了如何使用受限的PSP策略作为默认值在Rancher中启用PSP。我们还展示了如何防止特权Pod被接纳到集群中。 我们有意省略了有关基于角色的访问控制(RBAC)以及如何将Pod与特定PSP连接的具体细节。那么,这篇文章让我们继续深入研究PSP。 将Pod与Pod 安全策略匹配 你可能已经注意到,PSP模式没有与任何Kubernetes命名空间、Service Account或Pod相关联。实际上,PSP是集群范围的资源。那么,我们如何指定哪些Pod应该由哪些PSP来管理呢?下图显示了所有参与组件、资源以及准入流程的工作方式。 也许一开始听起来很复杂。现在,我们来详细介绍一下。 部署Pod时,准入控制将根据请求deployment的对象来应用策略。 Pod本身没有任何关联的策略——执行该Deployment的是service account。在上图中,Jorge使用webapp-sa service

保姆级教程!手把手教你使用Longhorn管理云原生分布式SQL数据库!

大城市里の小女人 提交于 2020-04-01 15:18:31
作者简介 Jimmy Guerrero,在开发者关系团队和开源社区拥有20多年的经验。他目前领导YugabyteDB的社区和市场团队。 本文来自 Rancher Labs Longhorn是Kubernetes的云原生分布式块存储,易于部署和升级,100%开源且持久,由业界采用最为广泛的Kubernetes管理平台创建者Rancher Labs推出,并于去年10月捐献给CNCF。Longhorn的内置增量快照和备份功能可确保volume数据的安全,而其直观的UI可以方便地管理持久卷的计划备份。使用Longhorn,你可以获得最细的管理粒度和最大的控制程度,并且可以轻松地在另一个Kubernetes中创建一个灾备恢复的volume,并在发生紧急情况时进行故障转移。 YugabyteDB是一个云原生分布式SQL数据库,它可以运行在Kubernetes环境中,所以它可以与Longhorn和许多其他CNCF项目互操作。YugabyteDB是一个开源的高性能分布式SQL数据库,该数据库基于Google Spanner的可扩展性和容错设计而构建。Yugabyte的SQL API(YSQL)与PostgreSQL兼容。 如果你正在寻找一种方法来轻松地在100%的云原生基础架构之上开始应用程序开发,那么这篇文章正是为你准备的。我们将一步一步告诉你如何部署一个完整的云原生基础架构堆栈

保姆级教程!手把手教你使用Longhorn管理云原生分布式SQL数据库!

走远了吗. 提交于 2020-04-01 15:16:57
作者简介 Jimmy Guerrero,在开发者关系团队和开源社区拥有20多年的经验。他目前领导YugabyteDB的社区和市场团队。 本文来自 Rancher Labs Longhorn是Kubernetes的云原生分布式块存储,易于部署和升级,100%开源且持久,由业界采用最为广泛的Kubernetes管理平台创建者Rancher Labs推出,并于去年10月捐献给CNCF。Longhorn的内置增量快照和备份功能可确保volume数据的安全,而其直观的UI可以方便地管理持久卷的计划备份。使用Longhorn,你可以获得最细的管理粒度和最大的控制程度,并且可以轻松地在另一个Kubernetes中创建一个灾备恢复的volume,并在发生紧急情况时进行故障转移。 YugabyteDB是一个云原生分布式SQL数据库,它可以运行在Kubernetes环境中,所以它可以与Longhorn和许多其他CNCF项目互操作。YugabyteDB是一个开源的高性能分布式SQL数据库,该数据库基于Google Spanner的可扩展性和容错设计而构建。Yugabyte的SQL API(YSQL)与PostgreSQL兼容。 如果你正在寻找一种方法来轻松地在100%的云原生基础架构之上开始应用程序开发,那么这篇文章正是为你准备的。我们将一步一步告诉你如何部署一个完整的云原生基础架构堆栈

实例演示:如何简化生产中的Pod安全策略?

一笑奈何 提交于 2020-04-01 14:08:49
Pod安全策略对于强化K8S集群安全至关重要。本文将延续之前的文章继续深入介绍Pod安全策略。 首先,简单介绍了如何将Pod与Pod安全策略相关联,并使用RBAC来展示具体步骤。然后介绍如何在Rancher中启用默认的PSP和创建自定义PSP。最后将使用一种工具来简化生产中Pod安全策略的使用,极大提升生产力,赶紧戳文咯~ 本文来自 RancherLabs 在 之前的文章 中,我们演示了如何使用受限的PSP策略作为默认值在Rancher中启用PSP。我们还展示了如何防止特权Pod被接纳到集群中。 我们有意省略了有关基于角色的访问控制(RBAC)以及如何将Pod与特定PSP连接的具体细节。那么,这篇文章让我们继续深入研究PSP。 将Pod与Pod 安全策略匹配 你可能已经注意到,PSP模式没有与任何Kubernetes命名空间、Service Account或Pod相关联。实际上,PSP是集群范围的资源。那么,我们如何指定哪些Pod应该由哪些PSP来管理呢?下图显示了所有参与组件、资源以及准入流程的工作方式。 也许一开始听起来很复杂。现在,我们来详细介绍一下。 部署Pod时,准入控制将根据请求deployment的对象来应用策略。 Pod本身没有任何关联的策略——执行该Deployment的是service account。在上图中,Jorge使用webapp-sa service

了解一下项目中所用到的开发工具(扫盲篇)

╄→尐↘猪︶ㄣ 提交于 2020-03-28 18:20:15
最近做的系统中有运用到类似这些页面化的工具kibana、rocketmq,swagger,quickBI,ES,Flowable,Dubbo admin,Rancher,xxjob,有很多新奇的东西不清楚怎么办,当然问度娘 --kibana   我在运用kibana过程中最多的是查报错日志,通过env,project,x_path和crid进行查询,定位报错日志。 实际百度到的作用不仅仅我所了解的功能 Kibana 是为 Elasticsearch设计的开源分析和可视化平台。你可以使用 Kibana 来搜索,查看存储在 Elasticsearch 索引中的数据并与之交互。你可以很容易实现高级的数据分析和可视化,以图标的形式展现出来。 Kibana 的使用场景,应该集中在两方面: 实时监控 通过 histogram 面板,配合不同条件的多个 queries 可以对一个事件走很多个维度组合出不同的时间序列走势。时间序列数据是最常见的监控报警了。 问题分析 关于 elk 的用途,可以参照其对应的商业产品 splunk 的场景:使用 Splunk 的意义在于使信息收集和处理智能化。而其操作智能化表现在: 搜索,通过下钻数据排查问题,通过分析根本原因来解决问题; 实时可见性,可以将对系统的检测和警报结合在一起,便于跟踪 SLA 和性能问题; 历史分析,可以从中找出趋势和历史模式

K8s 1.8 正式 release | 云原生生态周报 Vol. 43

不羁岁月 提交于 2020-03-27 15:41:14
3 月,跳不动了?>>> 作者 | 汪萌海、 王思宇 业界要闻 K8s 1.8 正式 release Kubernetes1.18 版本发布! 一些将对社区产生影响的新特性日渐完善,如 KSA(Kubernetes Service Account) tokens 的 OIDC 发现和对 Windows 节点的支持。此外,一些在 Alpha 状态下运行了很久的特性,也重新成为新的焦点,如 ingress 或 APIServer 网络代理。1.18 版本共有 13 个特性逐渐稳定,这是所有新变化的 1/3!其中几个比较有意思的特性,例如 kubectl 调试容器、使用 Kubernetes API 令牌作为通用身份验证机制、支持根据 pod 的 schedulerName 运行不同的调度配置、支持 Pod 自定义打散、HPA 支持配置伸缩速率等。 KubeOperatorV2.4 发布 3 月 16 日,开源容器平台 KubeOperator 发布 V2.4 版本。KubeOperator V2.4 版本新增了用户体系和权限,同时增加了对 Kubernetes V1.16.7 和 V1.15.10 版本的支持。 上游重要进展 eviction by process number 优化 kubelet 在 out-of-pids 的 evict 算法,优先驱逐进程数最多的 pod。