k8s专题[1.k8s基础概念]

1.概念

Kubernetes是一个容器编排系统,也就是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。Kubernetes 最初源于谷歌内部的 Borg,提供了面向应用的容器集群部署和管理系统。Kubernetes 的目标旨在消除编排物理 / 虚拟计算,网络和存储基础设施的负担,并使应用程序运营商和开发人员完全将重点放在以容器为中心的原语上进行自助运营。Kubernetes 也提供稳定、兼容的基础(平台),用于构建定制化的 workflows 和更高级的自动化任务。 Kubernetes 具备完善的集群管理能力,包括多层次的安全防护和准入机制、多租户应用支撑能力、透明的服务注册和服务发现机制、内建负载均衡器、故障发现和自我修复能力、服务滚动升级和在线扩容、可扩展的资源自动调度机制、多粒度的资源配额管理能力。 Kubernetes 还提供完善的管理工具,涵盖开发、部署测试、运维监控等各个环节。

2.特点

  • 可移植: 支持公有云,私有云,混合云,多重云(multi-cloud)

  • 可扩展: 模块化, 插件化, 可挂载, 可组合

  • 自动化: 自动部署,自动重启,自动复制,自动伸缩/扩展

3.Kubernetes 架构

k8s集群更新证书

(版权声明:本文转载博客园「aguncn」的文章。原文链接)

1.问题起源

kubeadm 是 kubernetes 提供的一个初始化集群的工具,使用起来非常方便。但是它创建的apiserver、controller-manager等证书默认只有一年的有效期,同时kubelet 证书也只有一年有效期,一年之后 kubernetes 将停止服务。
官方推荐一年之内至少用 kubeadm upgrade 更新一次 kubernetes 系统,更新时也会自动更新证书。不过,在产线环境或者无法连接外网的环境频繁更新 kubernetes 不太现实。我们可以在过期之前或之后,使用kubeadm alpha phase里的certs和kubeconfig命令,同时配合kubelet证书自动轮换机制来解决这个问题。

2.k8s里面的证书详解

  • Kubernetes 集群根证书

/etc/kubernetes/pki/ca.crt

/etc/kubernetes/pki/ca.key

  • 由此根证书签发的证书有:

1.kube-apiserver 组件持有的服务端证书

/etc/kubernetes/pki/apiserver.crt

/etc/kubernetes/pki/apiserver.key

2.kubelet 组件持有的客户端证书,kubelet 上一般不会明确指定服务端证书, 而是只指定 ca 根证书, 让 kubelet 根据本地主机信息自动生成服务端证书并保存到配置的cert-dir文件夹中。

/etc/kubernetes/pki/apiserver-kubelet-client.crt

/etc/kubernetes/pki/apiserver-kubelet-client.key

  • 汇聚层(aggregator)证书

GlusterFS集群文件系统专题二(主要术语)

1.Trusted Storage Pool

  • 一堆存储节点的集合
  • 通过一个节点“邀请”其他节点创建,这里叫probe
  • 成员可以动态加入,动态删除
    添加命令如下:
    node1# gluster peer probe node2
    删除命令如下:
    node1# gluster peer detach node3

图1 GlusterFS存储池

2.Bricks

  • Brick是一个节点和一个导出目录的集合,e.g. node1:/brick1
  • Brick是底层的RAID或磁盘经XFS或ext4文件系统格式化而来,所以继承了文件系统的限制
  • 每个节点上的brick数是不限的
  • 理想的状况是,一个集群的所有Brick大小都一样

GlusterFS集群文件系统专题一(基础原理)

(版权声明:本文为CSDN博主「刘爱贵」的原创文章。原文链接)

1.概述

GlusterFS是Scale-Out存储解决方案Gluster的核心,它是一个开源的分布式文件系统,具有强大的横向扩展能力,通过扩展能够支持数PB存储容量和处理数千客户端。GlusterFS借助TCP/IP或InfiniBand RDMA网络将物理分布的存储资源聚集在一起,使用单一全局命名空间来管理数据。GlusterFS基于可堆叠的用户空间设计,可为各种不同的数据负载提供优异的性能。

图1 GlusterFS统一的挂载点

GlusterFS支持运行在任何标准IP网络上标准应用程序的标准客户端,如图2所示,用户可以在全局统一的命名空间中使用NFS/CIFS等标准协议来访问应用数据。GlusterFS使得用户可摆脱原有的独立、高成本的封闭存储系统,能够利用普通廉价的存储设备来部署可集中管理、横向扩展、虚拟化的存储池,存储容量可扩展至TB/PB级。GlusterFS主要特征如下:

  • 扩展性和高性能

GlusterFS利用双重特性来提供几TB至数PB的高扩展存储解决方案。Scale-Out架构允许通过简单地增加资源来提高存储容量和性能,磁盘、计算和I/O资源都可以独立增加,支持10GbE和InfiniBand等高速网络互联。Gluster弹性哈希(Elastic Hash)解除了GlusterFS对元数据服务器的需求,消除了单点故障和性能瓶颈,真正实现了并行化数据访问。

  • 高可用性

ntp-server服务端部署和配置

1.前言

Atomic Clock: 现在计算时间最准确的是使用 原子震荡周期 所计算的物理时钟(Atomic Clock),因此也被定义为标准时间(International Atomic Time)

UTC(coordinated Universal Time): 协和标准时间 就是利用 Atomic Clock 为基准定义出来的正确时间(又称世界统一时间,世界标准时间,国际协调时间)。

硬件时钟: 硬件时钟是指嵌在主板上的特殊的电路, 它的存在就是平时我们关机之后还可以计算时间的原因

系统时钟: 就是操作系统的kernel所用来计算时间的时钟. 它从1970年1月1日00:00:00 UTC时间到目前为止秒数总和的值

NTP(Network Time Protocol 网络时间协议)是一个用于同步计算机时钟的网络协议。它可以使计算机与其他服务器或时钟源进行时间同步,进行高精度的时间校正。

YUM源部署和使用

1.前言

为什么需要内部yum源呢,有可能是业务内部的服务器对外是不通了,居于一些安全方面的考虑。内部yum源又有什么好处呢,第一,速度快;第二,内网可控,外网有问题也不影响内网包的下载和安装等。

2.部署

2.1 创建yum仓库目录

1
2
3
4
mkdir -p /data/yum_data/centos/6/os/x86_64/
mkdir -p /data/yum_data/centos/6/extras/x86_64/
mkdir -p /data/yum_data/centos/6/updates/x86_64/
mkdir -p /data/yum_data/epel/6/x86_64/

2.2 镜像同步公网yum源

上游yum源必须要支持rsync协议,否则不能使用rsync进行同步
CentOS官方标准源:rsync://mirrors.ustc.edu.cn/centos/
epel源:rsync://mirrors.ustc.edu.cn/epel/
同步命令:

Tengine 基础原理和基本使用

1.Tengine简介
2.Tengine特性
3.Tengine工作原理和用途
- 3.1 Tengine处理HTTP请求流程
- 3.2 Tengine的模块化
- 3.3 Tengine进程模型
- 3.4 Tengine事件模型
- 3.5 Tengine信号
- 3.6 Tengine定时器
4.Tengine安装部署
- 4.1 安装依赖
- 4.2 编译
5.Tengine 文件目录结构
6.Tengine 配置文件详解
- 6.1 tengine主配置文件
- 6.2 状态检测配置文件
- 6.3 tengine常用配置
7.Tengine 安全防护
- 7.1 禁止web服务IP直接访问
- 7.2 连接和请求数限制
- 7.3 访问全站IP黑名单限制
- 7.4 下载防盗链配置
8.Tengine 重要模块
- 8.1 upstream负载均衡模块
- 8.2 rewrite重写模块
9.location 在匹配中的优先级
10.Tengine root 和 alias 的区别
11.Tengine TCP转发配置
12.Tengine 常用维护脚本或命令
13.参考文档

1.Tengine简介

Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验。它的最终目标是打造一个高效、稳定、安全、易用的Web平台。从2011年12月开始,Tengine成为一个开源项目,Tengine团队在积极地开发和维护着它。Tengine团队的核心成员来自于淘宝、搜狗等互联网企业。Tengine是社区合作的成果,我们欢迎大家参与其中,贡献自己的力量。

2.Tengine特性

Centos6 Tengine开启http2传输协议

1.前言

最近在优化网站的访问速度,为网站开启http2协议,这个协议有什么优点呢?如下:

  • http2是下一代的传输协议,以后都会普遍用它,是一个趋势。

  • http2有多路复用特性,意思是访问一个域名下面的资源,多个请求共用一条TCP链路,所以比http1.1要快得多。

2.准备工作

  • 需要重新编译openssl1.0.2以上版本,因为我们系统的版本都是centos6的,不支持直接yum更新openssl,如果是centos7,直接yum update openssl -y 即可更新

  • 编译完成openssl后,需要重新使用openssl的库文件重新编译tengine,我们使用的Tengine版本是Tengine/2.2.2。

3.操作步骤


:D 一言句子获取中...