Chrony-替换你的NTP服务

linux在运行时间长了之后,尤其在虚拟环境中。系统时间可能会存在一定的误差,时间同步在大型集群环境中是很重要的,而通过ntp协议来同步时间,则是一个很好的解决方案。linux默认使用ntpd来同步时间的,但ntpd同步时间并不理想,有可能需要数小时来同步时间,所以在Centos7中可换成chrony来实现时间同步。chrony兼容ntpd监听在udp123端口上,另外还监听在udp的323端口上。

阅读全文

Roy学Kubernetes(22):Kubernetes日常维护

kubernetes维护

kubernetes版本:v1.11.1/2

文档参考:

http://docs.kubernetes.org.cn/

阅读全文

ES数据备份和恢复

Elasticsearch 5.x 数据备份和恢复可由snapshot 模块来完成,snapshot模块可以通过文件共享系统为单个索引或整个集群远程创建快照和进行数据恢复。

阅读全文

Roy学Kubernetes(21):Persistent Volumes

概述

PersistentVolume子系统提供了用户和管理员使用和管理存储的抽象API。在这个子系统中,引进了两个新的API资源:PersistentVolume和PersistentVolumeClaim。

**PersistentVolume(PV)**是已经由管理员提供或者使用Storage类动态地从k8s Volume中配备的一块存储器。PV是Volume的插件,它有自己独立的生命周期,不受使用PV的Pod的生命周期影响。这个API对象描述了存储的实现细节,例如NFS、iSCSI或云提供商特定的存储系统。

阅读全文

Roy学Kubernetes(20):Volumes

Container中的磁盘文件(生命周期)是短暂的,这在容器中运行时会给部分特殊的应用程序带来一些问题。首先,当容器崩溃时,kubelet在重新启动它,数据文件会丢失(Container会以干净的状态启动)。其次,在Pod中运行多个Container时,通常需要在这些容器之间共享文件。Kubernetes Volume(卷)抽象的解决了这两个问题。

阅读全文

Roy学Kubernetes(19):网络策略

网络策略NetworkPolicy是允许pod组彼此之间以及和其他网络Endpoint端点通信的规则。NetworkPolicy资源使用标签来选择Pods并定义规则,这些规则指定允许所选Pods的流量请求。

前提条件

阅读全文

Roy学Kubernetes(18):Ingress Controller

在创建Ingress资源之前,k8s群集必须先运行Ingress Controller。

与作为kube-controller-manager二进制文件的一部分运行的其他类型的控制器(详见前面关于控制器的章节)不同,Ingress控制器不会自动与集群一起启动。 Ingress Controller有多种类型,在使用时请选择最适合你的Ingress Controller。GCE和nginx controller是kubernetes官方维护的Ingress Controller。

阅读全文

Roy学Kubernetes(17):Ingress

Ingress是管理k8s群集中服务的外部访问(通常是HTTP/HTTPS访问请求)的API对象,它可以提供负载均衡和基于域名的虚拟主机服务(实现nginx的功能)。
在了解Ingress之前,我们需要先知道以下术语:

  • Node:k8s集群工作节点
  • Cluster:k8s集群

阅读全文

Roy学Kubernetes(16):应用程序连接Service

本章我们将讨论kubernetes中连接到serivce容器的方法,首先我们来看它和docker容器网络工作模式的对比:

  • Docker默认使用主机私有网络通信,因此同一主机的容器之间可以互通。为了实现不同主机之间的容器访问,必须通过绑定本机端口来将请求转发或代理到其他节点容器。这就意味着容器必须协调好它们使用的端口,或者必须动态分配使用主机端口。当项目有多个开发人员时,协调端口及网络安全方面需要消耗更多的时间和人力成本。

阅读全文

linux磁盘IO查看命令iotop

linux服务器如果磁盘性能不佳,或者进程操作IO量超过磁盘负荷,都会导致磁盘IO响应缓慢,甚至出现宕机的情况。很多人会说,我有iostat命令啊。但是如果需要找到哪个进程对磁盘IO操作压力最大,iostat是不能帮我们直接呈现的,这时候,另一个利器iotop就派上用场了。

iotop命令

阅读全文