openshift 3.10多节点集群安装(基于Ansible和Centos7.4)

本文档详细介绍了如何在资源有限的环境中,利用Ansible自动化安装OpenShift 3.10多节点集群。文中提到的挑战包括:双节点模拟集群,DNS配置,etcd和master节点的部署,以及NFS作为存储的使用。特别强调了lb不应与master节点在同一节点上,etcd应统一部署在master或node上,以及安装前需要安装的基础软件如Java和Python。此外,还提到了Docker存储配置和静态IP环境下的DNS设置。
摘要由CSDN通过智能技术生成

参考官方文档https://docs.okd.io/3.10/install/index.html,基于Ansible安装3.10版openshift集群。openshift origin已改名为openshift OKD。

特注:本文仅供初学者参考!生产环境请结合实际并参照官方文档!

遇到的坑以及未完善的地方总结

由于我是在自己笔记本上建了两台虚机,资源有限,这里就拿双节点模拟一下集群,其中master节点也是计算节点、infra节点,运行etcd和nfs。node节点运行etcd和lb。

  • 官网推荐使用GlusterFS作为存储,我直接用的nfs。有关GlusterFS作为存储的做法,官网写的很清楚,想用GlusterFS可以参考官网https://docs.okd.io/3.10/install/configuring_inventory_file.html#advanced-install-glusterfs-persistent-storage

  • 如果lb和master在一个节点上,会有8443端口已被占用的问题,尝试在Inventory文件中修改API 8443端口为3443端口,安装还是有问题,故选择把lb不放在master节点上。建议安装时lb不要放在master节点上

  • 如果etcd放在master节点上,会以静态pod形式启动。如果放在node节点上,会以系统服务的形式启动。我在安装过程中,一个etcd放在了master上,另一个放在了node上,导致etcd启动失败。解决方案是在master节点上yum安装了一个etcd(这个etcd实际并没有使用,不确定是否是这个原因解决了),最终仍是以静态pod起的etcd。建议安装时etcd要么全放在master节点上,要么全放在node节点上。

  • 我在安装过程中,直接安装了带有nfs持久存储的监控,需要提前安装java-1.8.0-openjdk-headless python-passlib,这一点官网没有提及,不提前装安装会报错。

系统与环境要求

系统要求

以下部分确定了集群所有主机的硬件规格和系统级要求。

master系统要求

  • 最低操作系统版本:Fedora 21、CentOS 7.4、RHEL 7.4、RHEL Atomic Host 7.4.5。
  • 最低4 vCPU。
  • 最小16GB RAM。
  • 包含/var/的文件系统最小40GB硬盘空间。
  • 包含/usr/local/bin/的文件系统最小1GB硬盘空间。
  • 包含系统临时目录的文件系统最小1GB硬盘空间。

Etcd和Master在同一节点的,需要至少4核,2核系统将无法工作。

node系统要求

  • 最低操作系统版本:Fedora 21、CentOS 7.4、RHEL 7.4、RHEL Atomic Host 7.4.5。
  • NetworkManager 1.0或更新。
  • 最低1 vCPU。
  • 最小8GB RAM。
  • 包含/var/的文件系统最小15GB硬盘空间。
  • 包含/usr/local/bin/的文件系统最小1GB硬盘空间。
  • 包含系统临时目录的文件系统最小1GB硬盘空间。
  • 额外至少15GB未分配空间,用于Docker存储。

etcd系统要求

  • 最小20GB硬盘空间存储etcd数据。

SELinux要求

在安装OKD之前,必须在所有服务器上启用SELinux,否则安装程序将失败。
/etc/selinux/config配置如下:

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值