Ansible搭建K8S说明

kubernetes是一个开源的容器集群管理系统,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。之前部署K8S集群都是参照文档逐步执行完成的,需要大量时间且部署过程中会出现各种各样的问题,本篇文章以kubernetes1.14.0为例,介绍如何使用ansible进行K8S三台服务器非高可用的一键式离线安装

1名词解释 

1.K8S:是一个开源的,用于管理云平台多个主机上的容器化应用,Kubernetes目标是使部署容器化的应用简单且高效,Kubernetes提供了应用部署、规划、更新、维护的一种机制; 

2.Ansible:是新出现的自动化运维工具,基于Python开发,集合了多数运维工具(puppet、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能; 

3.机器名:在局域网或者是INTERNET上,每台主机都有一个IP地址,它可以区分每台主机,并可以根据IP进行通讯。但IP地址不方便记忆,所有又有了域名。在一个局域网中,每台机器都有一个主机名,用于区分主机,便于相互访问; 

4.Selinux:是部署在 Linux 系统中增强安全的功能模块,它通过对进程和文件资源采用 MAC(强制访问控制方式)为 Linux 系统提供改进的安全性; 

5.防火墙:FirewallD提供了支持网络/防火墙区域(zone)定义网络链接以及接口安全等级的动态防火墙管理工具。centos有两种防火墙FirewallD和iptables防火墙,centos7使用的是FirewallD防火墙。FirewallD是iptables的一个封装,可以让你更容易地管理 iptables规则,但它并不是iptables的替代品。 

2整体说明 

首先介绍3台服务器,各个服务器上部署的应用,其次介绍相关使用的命令,最后介绍ansible脚本使用到的文件大体作用。 

2.1部署架构 

这里分为服务器架构和K8S集群架构两类。 

2.1.1服务器 

以部署3台服务器为例: 

1台master: 

部署:1个nginx ,1个数据库(可以单独服务器部署),1个NFS服务端,1个私有镜像库,1个umc ,1个umc使用的redis; 

要求:cpu要大,内存和硬盘适中。 

2台worker: 

部署:2个ingress-controller, 2个NFS客户端,若干产品服务,对应产品的redis集群(开发环境单机); 

要求:cpu,内存和硬盘都要尽可能大些。 

2.1.2K8S集群 

说明: 单master版适用于演示环境,生成环境一定要使用多master版K8S高可用模式。 

2.2脚本说明 

介绍本次使用的相关文件,方便大家使用时,知道执行的原理和流程,而不仅只是个执行者。 

2.2.1文件说明 

3个文件,如下图: 

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值