istio入门系列之ServiceEntry ServiceEntry是用来将网络外部的服务纳入到网格内部进行管理,这个和ingress刚好相反,通过ServiceEntry我们可以通过网格来管理外部服务请求,管理外部服务的流量控制以及扩展我们得mesh网格。 下面我们来做学习一下ServiceEntry的配置。 首先我们配置一个sleep服务 1$ kubectl apply -f samples/sleep/sleep.yaml 我 2020-11-30 Istio #Kubernetes #Istio #ServiceEntry
istio入门系列之VirtualService和DestinationRule 本文我们讲解下如何通过用Virtual Service和 Destination Rule设置服务路由规则。 我们还是以之前部署的bookinfo示例进行操作,我们通过Virtual Service路由到reviews的v1版本。 bookinfo默认访问的情况是刷新页面会出现三种颜色星标,后续我们需要做的就是刷新页面让星标颜色不变。 下面我们直接创建对应的VirtualServi 2020-11-29 Istio #Kubernetes #Istio #VirtualService #DestinationRule
istio入门系列之安装部署篇 本篇我们讲一下如何部署istio到k8s集群,并且部署一个bookinfo样例来进行istio的访问测试。 部署istio这里我们部署的istio版本是1.5.1,对应的k8s集群版本是1.18.4。 12345678910# 获取安装脚本curl -L https://istio.io/downloadIstio |ISTIO_VERSION=1.5.1 sh -# 安装istio客户端exp 2020-11-28 Istio #Kubernetes #Istio
istio入门系列之产品介绍 本文我们大概讲一下istio的介绍,istio有哪些功能以及istio的一些设计架构原理。 istio介绍istio 解决了开发人员和运维人员所面临的从单体应用向分布式微服务架构转变的挑战。了解它是如何做到这一点的可以让我们更详细地理解 Istio 的服务网格。 术语服务网格用来描述组成这些应用程序的微服务网络以及它们之间的交互。随着服务网格的规模和复杂性不断的增长,它将会变得越来越难以理解和管理 2020-11-28 Istio #Kubernetes #Istio
fluent-bit收集不同业务日志 我们将服务部署在k8s中,通常需要收集业务日志进行分析,那么现在常用的日志采集是怎么做的呢,一般来说是搭建EFK系统来采集日志,今天我们来说说如何采集k8s中的不同业务日志然后投递到es不同的索引,然后通过kibana进行分析和查看。 对于EFK的搭建,我们这里不做具体的讲解,大家可参考 https://www.niewx.cn/2020/06/10/Build-EFK-log-collectio 2020-11-26 Kubernetes > Log #Kubernetes #EFK #Fluent
k8s之externalTrafficPolicy保留客户端源IP 使用k8s暴露我们的服务给外部访问的方式主要是有2种,一种就是nodeport类型,还有一种就是LoadBalancer,通常这2中都会做一个负载均衡,但是有一个问题就是服务端可能无法获取到客户端的真实ip,service.spec.externalTrafficPolicy这个字段就帮您解决了这个问题。 service.spec.externalTrafficPolicy - 表示此服务是否希望 2020-11-26 Kubernetes #Kubernetes #externalTrafficPolicy
Kubernetes之多集群的访问 日常使用k8s的过程中,我们可能存在多个集群需要管理,那么我们用kubectl来进行集群的切换个访问呢,下面简单说一下操作方式。 多集群kubeconfig合并123456# cd /root/.kube/# touch new-config1 #将一个集群kubeconfig内容写入new-config1文件中# touch new-config2 #将另一个集群kubeconfig 2020-11-25 Kubernetes #Kubernetes #kubeconfig
Kubernetes之etcd数据库 etcd是CoreOS团队于2013年6月发起的开源项目,它的目标是构建一个高可用的分布式键值(key-value)数据库。etcd内部采用raft协议作为一致性算法,etcd基于Go语言实现。 etcd作为服务发现系统,有以下的特点: 简单:安装配置简单,而且提供了HTTP API进行交互,使用也很简单 安全:支持SSL证书验证 快速:根据官方提供的benchmark数据,单实例支持每秒2k+ 2020-11-19 Kubernetes > etcd #Kubernetes #etcd
Kubernetes中pod的创建流程 一般我们在创建pod的过程中都是,执行kubectl命令去apply对应的yaml文件,但是在执行这个操作的过程到pod被完成创建,k8s的组件都做了哪些操作呢?下面我们简要说说pod被创建的过程。 用户通过kubectl命名发起请求。 apiserver通过对应的kubeconfig进行认证,认证通过后将yaml中的po信息存到etcd。 Controller-Manager通过apise 2020-11-17 Kubernetes #Kubernetes #Pod
k8s之securityContext securityContext是什么呢,有什么作用呢,其实这个就是用来控制容器内的用户权限,你想用什么用户去执行程序或者执行操作等等。 securityContext介绍安全上下文(Security Context)定义 Pod 或 Container 的特权与访问控制设置。 安全上下文包括但不限于: 自主访问控制(Discretionary Access Control):基于 用户 ID(U 2020-11-16 Kubernetes #Kubernetes #securityContext