https://niwoxuexi.com/blog/user/146
一、基本介绍1,什么是 Maven?(1)Maven是一种用来管理Java项目的工具,能够管理项目的构建、报告和文档,处理一个具体的项目所涉及的各种任务。(2)Maven工程结构和内容被定义在一个名为pom.xml的文件中。pom是Project Object Model的简称,此文件是整个Maven系统的基础组件,包含了Maven用于管理该项目的所有配置信息。2,使用 Maven 的优点传统的项 ...
最近需要在Mac系统上进行SpringBoot开发,可惜当前的JDK版本太低(1.7),下面介绍如何将其升级为1.8版本。1,JDK 的下载与安装(1)首先访问Oracle官网(www.oracle.com),点击页面最下方的“Java for Developers”链接。(2)找到需要的版本后,点击旁边的“JDK DOWNLOAD”按钮:(3)选择“Accept Lisence Agreemen ...
1,问题描述(1)最近发现咋Kubernetes集群上有个处于Terminating状态的Pod:(2)但通过kubectl delete pods命令却死活无法将其删除:1kubectldeletepods httpd-app-6df58645c6-cxgcm2,解决办法(1)无论各种方式生成的pod, 均可以使用如下命令强制删除:1kubectldeletepods <pod> - ...
十四、集群日志管理:Elasticsearch1,Elasticsearch 介绍(1)Kubernetes开发了一个Elasticsearch附加组件来实现集群的日志管理。这是一个Elasticsearch、Fluentd和Kibana的组合。(2)它们分工如下:Fluentd负责从Kubernetes搜集日志并发送给Elasticsearch;Elasticsearch是一个搜索引擎,负责存储 ...
十三、Heapster1,基本介绍(1)Heapster是Kubernetes原生的集群监控方案。Heapster以Pod的形式运行,它会自动发现集群节点、从节点上的Kubelet获取监控数据。Kubelet则是从节点上的cAdvisor收集数据。(2)Heapster将数据按照Pod进行分组,将它们存储到预先配置的backend并进行可视化展示。Heapster当前支持的backend有Infl ...
十二、Weave Scope1,基本介绍Weave Scope是Docker和Kubernetes可视化监控工具。Weave Scope提供了至上而下的集群基础设施和应用的完整视图,用户可以轻松对分布式的容器化应用进行实时监控和问题诊断。2,安装步骤(1)安装Weave Scope的方法很简单,我们只需执行如下命令即可:1kubectl apply -f"https://cloud.we ...
我们知道目前已有多种支持Kubernetes的网络方案,比如Flannel、Calico、Canal、Weave Net等。因为它们都实现了CNI规范,所以用户无论选择哪种方案,得到的网络模型都一样,即每个Pod都有独立的IP,可以直接通信。 而这些方案除了底层实现不同,性能上有差异外。最大的区别就是就是是否支持Network Policy了。十一、使用 Canal 网络实现 Network ...
八月头条:波澜不惊的月度排行 相比 7 月榜单,本月编程语言的排名并未有太大波动,因此TIOBE 官方也将 8 月编程语言排行榜戏谑为“Silly season”。在 Top 10 中唯一的变化就是 Objective-C 和 SQL 的位置首次发生了变换(Objective-C 位列第九,SQL 排名第十)。近年来,Objective-C 在苹果主推 Swift 的举措下,发展得尤为艰难。不过 ...
前文介绍了如何用Secret为Pod提供密码、Token、私钥等敏感数据;而对于一些非敏感数据,比如应用的配置信息,则可以用ConfigMap来实现. ConfigMap的创建、使用方式与Secret非常类似,主要的不同在于数据以明文的形式存放。下面通过样例进行演示。十、使用 ConfigMap 管理应用配置信息1,创建 ConfigMap与Secret一样,ConfigMap也支持四种创建方 ...
应用启动过程中可能需要一些敏感信息,比如访问数据库的用户名密码或者秘钥。将这些信息如果直接保存在容器镜像中显然不妥,Kubernetes提供的解决方案是Secret。九、使用 Secret 管理敏感信息1,Secret 的功能介绍Secret会以密文的方式存储数据,避免了直接在配置文件中保存敏感信息。Secret会以Volume的形式被mount到Pod,容器可通过文件的方式使用Secret中 ...
我们知道容器和Pod的生命周期可能很短,会被频繁地销毁和创建。当容器销毁时,保存在容器内部文件系统中的数据都会被清除。为了持久化保存容器的数据,我们可以使用Kubernetes Volume。 除此之外,有一些场景可能一个pod里面的多个容器需要共享数据。同样可以借助Volume来实现。八、Volume 存储1,什么是Volume?(1)Volume的生命周期独立于容器,Pod中的容器可能被 ...
七、滚动更新、回滚1,滚动更新滚动更新的含义:一次只更新一小部分副本,成功后,再更新更多的副本,最终完成所有副本的更新。滚动更新的好处:最大好处是零停机,整个更新过程始终有副本在运行,从而保证了业余的连续性。(1)假设我们要部署三个副本的应用,初始镜像是httpd:2.4.16,配置文件为httpd.v1.yml,内容如下:(2)然后通过kubectl apply进行部署:1kubectl app ...
Pod中的容器很可能因为各种原因发生故障而死掉,Controller会通过动态创建和销毁Pod来保证应用整体的健壮性。而由于每次新Pod都会分配到新的IP地址,为了能让客户端找到并访问这个服务,Kubernetes给出了Service这个解决方案。六、Service 的创建和使用1,Service 介绍(1)Kubernetes Service从逻辑上代表了一组Pod,具体是哪些Pod则是由la ...
Linux中有cron程序可以定时执行任务,而Kubernetes的CronJob则提供了类似的功能,可以定时执行Job。五、运行 CronJob1,准备工作(1)Kubernetes默认没有enable CronJob功能,需要在kube-apiserver中加入这个功能。首先我们修改kube-apiserver的配置文件:1vi /etc/kubernetes/manifests/kube-a ...
容器按照持续运行的时间可分为两类:服务类容器和工作类容器。 服务类容器通常持续提供服务,需要一直运行,比如http server,daemon等。工作类容器则是一次性任务,比如批处理程序,完成后容器就退出。对于Kubernetes里个各种Controller来说:Deployment、ReplicaSet和DaemonSet都用于管理服务类容器。Job、CronJon则用于管理工作类容器。下面我就 ...