Kubernetes权威指南:从Docker到Kubernetes实践全接触(第4版)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

第2章 Kubernetes安装配置指南

2.1 系统要求

Kubernetes系统由一组可执行程序组成,用户可以通过GitHub上的Kubernetes项目页下载编译好的二进制包,或者下载源代码并编译后进行安装。

安装Kubernetes对软件和硬件的系统要求如表2.1所示。

表2.1 安装Kubernetes对软件和硬件的系统要求

Kubernetes需要容器运行时(Container Runtime Interface,CRI)的支持,目前官方支持的容器运行时包括:Docker、Containerd、CRI-O和frakti。容器运行时CRI的原理详见3.9节的说明。本节以Docker作为容器运行环境,推荐版本为Docker CE 18.09。

宿主机操作系统以CentOS Linux 7为例,使用Systemd系统完成对Kubernetes服务的配置。其他Linux发行版的服务配置请参考相关的系统管理手册。为了便于管理,常见的做法是将Kubernetes服务程序配置为Linux系统开机自启动的服务。

需要注意的是,CentOS Linux 7默认启动了防火墙服务(firewalld),而Kubernetes的Master与工作Node之间会有大量的网络通信,安全的做法是在防火墙上配置各组件需要相互通信的端口号,具体要配置的端口号详见2.8节各服务启动参数中监听的端口号。在安全的内部网络环境中可以关闭防火墙服务:

        # systemctl disable firewalld
        # systemctl stop firewalld

另外,建议在主机上禁用SELinux,让容器可以读取主机文件系统:

        # setenforce 0

或修改系统文件/etc/sysconfig/selinux,将SELINUX=enforcing修改成SELINUX=disabled,然后重启Linux。