K8S集群安装动态存储 GlusterFS

K8S 存储介绍

  • 简介

    在 K8S 中,对容器所应用的存储资源抽象为存储卷 Volume。它的生命周期与 POD 相同,POD 中的容器如果要使用某个 Volume,需要通过 volumeMounts来指定某个 volume 或者 多个 volume 挂载到容器的目录或文件。那么就可以从容器中访问 volume 中的数据。

    K8S支持内部资源对象类型、开源共享存储类型等,K8S管理宿主机的本地存储类型, EmptyDirHostPath,前者为临时目录,后者为宿主机目录。内部资源对象最常见的就是持久化存储 PV,开源共享存储类型就有很多,比如:

    • CephFS 开源共享存储系统
    • Glusterfs 开源共享存储系统
    • CSI(Container Storage Interface,容器存储接口)由存储提供商提供驱动程序和管理程序
    • FlexVolume 一种基于插件式驱动的存储
    • 其他

    EmptyDir 是在 pod 被调度到 node 时创建,在初始状态下目录中是空的,与 pod 的生命周期相同。

阅读更多

使用Kubeadm工具快速安装K8S集群

预备工作

  • 准备两台 CentOS 7.8 的虚拟机

  • 安装 docker engineer

    1. 清理docker,没有安装过 docker ,没有必要执行

      1
      2
      3
      4
      5
      6
      7
      8
      sudo yum remove docker \
      docker-client \
      docker-client-latest \
      docker-common \
      docker-latest \
      docker-latest-logrotate \
      docker-logrotate \
      docker-engine
    2. 安装 yum-utils,提供了组件 yum-config-manager

      sudo yum install -y yum-utils

    3. 添加 yum 源
      sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

    4. 安装 docker engine
      sudo yum install docker-ce docker-ce-cli containerd.io

    5. 开启 docker 服务
      sudo systemctl start docker

    6. automatic startup
      sudo systemctl enable docker

阅读更多

K8S的label和annotation区别

概述

label 和 annotation 都可以将元数据关联到 Kubernetes 的资源对象。与资源对象相关的事务与动作。label 主要用于来选择对象,可以指定满足特定条件的对象。但是 annotation 不能标识和选择对象。annotation 中的元数据可以是结构化或者非结构化的,也可以包含 label 中不允许出现的字符。

资源对象的名称 ( Name ) 、标签、注解这三个属性属于资源对象的元数据(metadata)

阅读更多

Kubernetes介绍

K8S 是什么

Kubernetes,又称为 k8s(首字母为 k、首字母与尾字母之间有 8 个字符、尾字母为 s,所以简称 k8s)或者简称为 “kube”。一个开源平台,用来干嘛的?用来自动化部署,缩扩容和管理容器应用的。下面这张图是 K8S 集群的架构图。

K8S 的整体架构

阅读更多