Browsed by
标签:Docker

Kubernetes是什么-Wikipedia

Kubernetes是什么-Wikipedia

閱讀本文約花費: 11 (分鐘) 英文链接:https://en.wikipedia.org/wiki/Kubernetes Kubernetes(通常写成“k8s”)是最开始由google设计开发最后贡献给Cloud Native Computing Foundation的开源容器集群管理项目。它的设计目标是在主机集群之间提供一个能够自动化部署、可拓展、应用容器可运营的平台。Kubernetes通常结合docker容器工具工作,并且整合多个运行着docker容器的主机集群。 历史 Kubernetes( 来自希腊语κυβερνήτης:,意思为 “操舵员” 或者 “飞行员”)由Joe Beda, Brendan Burns 和Craig McLuckie建立,并在2014年被google公司首次对外公布。它的发展和设计受到google的Borg系统的严重影响。Kubernetes项目的许多主要贡献者来自Borg项目。在Google内部Kubernetes最开始的名字叫Serven of Nine,引用了电影“星际迷航”中通常被认为“更加友好”的“博格人”这个角色。由于google律师的反对,它的名字被重命名为Kubernetes。从Kubernetes的logo上面那车轮上的七个幅条就能在一定程度上推断出Kubernets最开始的名字是什么。 2015年七月21日Kubernet…

Read More Read More

Dockerfile部署Nginx、Apache、Tomcat

Dockerfile部署Nginx、Apache、Tomcat

閱讀本文約花費: 1 (分鐘) nginx #安装nginx并用CMD设置默认启动命令 #默认初始镜像为centos:7 FROM centos:7 RUN yum install -y epel-release && yum install -y nginx CMD [“nginx”,”-g”,”daemon off;”] apache #安装http并用CMD设置默认启动命令 #默认初始镜像为centos:7 FROM centos:7 RUN yum install -y httpd CMD [“httpd”,”-D”,”FOREGROUND”] tomcat #安装jdk tomcat并启动 #默认初始镜像为centos:7 FROM centos:7 ADD ./apache-tomcat-9.0.12.tar.gz /root ADD ./jdk-8u181-linux-x64.tar.gz /root ENV JAVA_HOME /root/jdk1.8.0_181 ENV PATH $JAVA_HOME/bin:$PATH RUN echo JAVA_OPTS=”-Djava.security.egd=file:/dev/./urandom” >> /root/apache-tomcat-9.0.12/bin/catalina.sh ENTRYPOI…

Read More Read More

基于k8s Prometheus+Grafana+Altermanager钉钉报警

基于k8s Prometheus+Grafana+Altermanager钉钉报警

閱讀本文約花費: 6 (分鐘) 一、概述 Alertmanager与Prometheus是相互分离的两个组件。Prometheus服务器根据报警规则将警报发送给Alertmanager,然后Alertmanager将silencing、inhibition、aggregation等消息通过电子邮件、dingtalk和HipChat发送通知。 Alertmanager处理由例如Prometheus服务器等客户端发来的警报。它负责删除重复数据、分组,并将警报通过路由发送到正确的接收器,比如电子邮件、Slack、dingtalk等。Alertmanager还支持groups,silencing和警报抑制的机制。 钉钉作为内部通讯工具,基本上大家在电脑和手机上都能用,消息可以第一时间查看,报警消息的即时性要求比较高,所以适合用钉钉通知。 二、添加钉钉机器人 请参考官方文档:自定义机器人 添加机器人后获取机器人的hook(机器人好像只能在钉钉群里面添加),在后面部署会用到。 机器人hook:https://oapi.dingtalk.com/robot/send?access_token=xxxxxx 三、配置Alertmanager Alertmanager官方文档:https://github.com/prometheus/docs/blob/db2a09a8a7e193d6e474f3…

Read More Read More

使用Prometheus Operator监控kubetnetes集群

使用Prometheus Operator监控kubetnetes集群

閱讀本文約花費: 9 (分鐘) 一、简介 Prometheus Prometheus 是一个开源监控系统,它本身已经成为了云原生中指标监控的事实标准,几乎所有 Kubernetes 的核心组件以及其它云原生系统都以 Prometheus 的指标格式输出自己的运行时监控信息。 主要特性: 使用指标名称及键值对标识的多维度数据模型。采用弹性查询语言PromQL。不依赖分布式存储,为自治的单点服务。使用http完成对监控数据的拉取。通过网关支持时序数据的推送。支持多种图形和Dashboard的展示。 另外在Prometheus的整个生态系统中有各种可选组件,用于功能的扩充。 Prometheus-Operator CoreOS提供了一种名为Operator的管理工具,他是管理特定应用程序的控制器。通过扩展Kubernetes API以软件的方式帮助用户创建、配置和管理复杂的或又状态的应用程序实例(如etcd、Redis、MySQL、Prometheus等)。 它通过Kubernetes的CRD(Custom Resource Definition,自定义资源定义)对Prometheus和Prometheus需要监控的服务进行部署和配置。 Prometheus-Operator使用下面两种资源来配置Prometheus及其要监控的服务。 Prometheus:为Prometheus的dep…

Read More Read More

Kubernetes源码之旅:从kubectl到API Server

Kubernetes源码之旅:从kubectl到API Server

閱讀本文約花費: 13 (分鐘) 概述: Kubernetes项目目前依然延续着之前爆炸式的扩张。急需能够理解Kubernetes原理并且贡献代码的软件开发者。学习Kubernetes源码并不容易。Kubernetes是使用相对年轻的Go语言编写,并且拥有大量的源代码。在这个系列的多篇文章里,我将为大家深入分析Kubernetes的关键源码,以及介绍那些帮助我理解源码的技术。我的目标是提供一系列的文章,让对于Kubernetes还较为陌生的开发者能够快速学习Kubernetes源码。 在第一篇文章里,我会分析从运行一个简单的kubectl命令到向API Server发送REST调用的源码执行过程。在开始深入Kubernetes之前,我建议你先阅读一下Julia Evans对Kubernetes架构的高级概述分析的文章。 Kubectl命令的基本运行 Kubernetes里的命令行接口叫做kubectl。它用来控制Kubernetes集群。阅读这部分源码实现是一个好的开始。我们要追踪的命令是kubectl create -f——它会从文件创建K8s资源。我们要创建的资源是使用了Nginx基础镜像的单副本Pod。下面是它的yaml描述: apiVersion: v1 kind: ReplicationController metadata:  name: nginx spec…

Read More Read More

How does the Kubernetes scheduler work?

How does the Kubernetes scheduler work?

閱讀本文約花費: 1 (分鐘) Hello! We talked about Kubernetes’ overall architecture a while back. This week I learned a few more things about how the Kubernetes scheduler works so I wanted to share! This kind of gets into the weeds of how the scheduler works exactly. It’s also an illustration of how to go from “how is this system even designed I don’t know anything about it?” to “okay I think I understand the basic design decisions here and why they were made” without actually.. asking anyone (because I don’t know any kubernetes contributors really, certainly not well enough to be like PLEA…

Read More Read More