ES Module学习笔记
ECMAScript Modules(ES Modules)是ECMAScript 6(ES6)规范中引入的一项重要特性,于2015年发布。ES6是ECMAScript标准的第六个版本,也被称为ECMAScript 2015。 ES Modules提供了一种新的模块系统,以改进JavaScript中模块化的方式。它引入了import和export关键字,允许开发者更方便地组织和管理JavaScript代码。
ECMAScript Modules(ES Modules)是ECMAScript 6(ES6)规范中引入的一项重要特性,于2015年发布。ES6是ECMAScript标准的第六个版本,也被称为ECMAScript 2015。 ES Modules提供了一种新的模块系统,以改进JavaScript中模块化的方式。它引入了import和export关键字,允许开发者更方便地组织和管理JavaScript代码。
在Kubernetes中,可以使用Ingress资源将集群内部的Service暴露到集群外部,可参见之前整理的《Kubernetes Ingress实战》。 而Istio这个Service Mesh则推荐使用另一个更好的配置模型,即Istio Gateway。Istio Gateway可以允许我们将Istio的功能(如:监控和路由规则)应用到进入集群的流量。
Kubernetes 1.8关于资源使用情况的metrics(例如容器的CPU和内存),可以通过Metrics API获取到。 前面在做Kubernetes 1.11的升级工作时,Kubernetes 1.11已经废弃heapster那套监控的东东。因此是时候了解一下Kubernetes的Metrics API和Metrics Server了。
Kubernetes Ingress实战(一):在Kubernetes集群中部署NGINX Ingress Controller Kubernetes Ingress实战(二):使用Ingress将第一个HTTP服务暴露到集群外部 Kubernetes Ingress实战(三):使用Ingress将gRPC服务暴露到Kubernetes集群外部 Kubernetes Ingress实战(四):Bare metal环境下Kubernetes Ingress边缘节点的高可用 Kubernetes Ingress实战(五):Bare metal环境下Kubernetes Ingress边缘节点的高可用(基于IPVS) Kubernetes Ingress实战(六):Bare metal环境下Kubernetes Ingress边缘节点的高可用,Ingress Controller使用hostNetwork 前面我们基于Keepavlied实现了Kubernetes集群边缘节点的高可用,详见《Kubernetes Ingress实战(四):Bare metal环境下Kubernetes Ingress边缘节点的高可用》。当kube-proxy开启了ipvs模式后,可以不再使用keepalived,ingress controller的采用externalIp的Service,externalIp指定的就是VIP,由kube-proxy ipvs接管。试验环境如下:
IPVS(IP Virtual Server)是lvs项目的一部分,作为Linux内核的一部分,提供4层负载均衡器的功能,即传输层负载均衡。ipvs运行在主机内核中,作为真是服务器集群前的负载均衡器,将到对服务的请求转发到真实的服务器上,并将多个ip的真实服务器集群的服务显示为单个ip的虚拟机服务。
1.Kubernetes基于DNS的服务发现 在Kubernetes集群推荐使用Service Name作为服务的访问地址,因此需要一个Kubernetes集群范围的DNS服务实现从Service Name到Cluster Ip的解析,这就是Kubernetes基于DNS的服务发现功能。 在从Kubernetes 1.10开始Dynamic Kubelet Configuration特性进入beta阶段,kubelet的大多数命令行参数都改为推荐在--config指定位置的配置文件中进行配置,包括---cluster-dns和--cluster-domain两个参数,在kubelet的配置文件中配置如下:
Kubernetes 1.12已经发布。我们线上的版本升级都是按照比官方低一个版本的节奏。 因此可以开始考虑将团队线上环境的Kubernetes集群从1.10升级到1.11了。 本文记录了在测试环境中的演练过程。 1.准备 当前Kubernetes 1.11的小版本是1.11.3。 在升级之前一定要多读几遍官方的升级须知Kubernetes 1.11 - Action Required Before Upgrading。
kubeadm是Kubernetes官方提供的用于快速安装Kubernetes集群的工具,伴随Kubernetes每个版本的发布都会同步更新,kubeadm会对集群配置方面的一些实践做调整,通过实验kubeadm可以学习到Kubernetes官方在集群配置上一些新的最佳实践。
前面我们在Kubernetes上部署了Istio 1.0并实际操作了一下官方示例应用及流量管理的基本功能。本篇将总结一下Istio的基本概念,加深理解。 1.0 Istio的定义 istio的官网https://istio.io/首页上用一句话描述了istio的定义:Istio Connect, secure, control, and observe services.,即Istio用来连接、保护、控制、观测服务。
Kubernetes Ingress实战(一):在Kubernetes集群中部署NGINX Ingress Controller Kubernetes Ingress实战(二):使用Ingress将第一个HTTP服务暴露到集群外部 Kubernetes Ingress实战(三):使用Ingress将gRPC服务暴露到Kubernetes集群外部 Kubernetes Ingress实战(四):Bare metal环境下Kubernetes Ingress边缘节点的高可用 Kubernetes Ingress实战(五):Bare metal环境下Kubernetes Ingress边缘节点的高可用(基于IPVS) Kubernetes Ingress实战(六):Bare metal环境下Kubernetes Ingress边缘节点的高可用,Ingress Controller使用hostNetwork 1.Kubernetes边缘节点的单点故障 经过前面几篇对Ingress的学习,我们已经可以在一个Kubernetes中部署nginx ingress,同时可以将集群中的两类服务HTTP和gRPC暴露到集群外部。 本篇将主要关注一下Bare metal环境下Kubernetes Ingress边缘节点高可用相关的问题。我们的线上环境并没有使用公有云,因此无法使用各种共有云提供的ingress controller。