OpenShift – 环境设置

OpenShift – 环境设置


在本章中,我们将了解 OpenShift 的环境设置。

系统要求

为了设置企业 OpenShift,需要有一个有效的 Red Hat 帐户。由于 OpenShift 工作在 Kubernetes master 和 node 架构上,我们需要将它们设置在不同的机器上,其中一台机器充当 master,其他机器在节点上工作。为了设置两者,有最低系统要求。

主机配置

以下是主机配置的最低系统要求。

  • 托管在物理、虚拟或任何云环境上的基础机器。

  • 至少 Linux 7 以及该实例上所需的软件包。

  • 2个CPU核心。

  • 至少 8 GB 内存。

  • 30 GB 内部硬盘内存。

节点机器配置

  • 为主机提供的物理或虚拟基础映像。
  • 机器上至少有 Linux 7。
  • 安装的 Docker 版本不低于 1.6。
  • 1 个 CPU 内核。
  • 8 GB 内存。
  • 15 GB 硬盘用于托管图像,15 GB 用于存储图像。

OpenShift 设置分步指南

在下面的描述中,我们将设置 OpenShift 实验室环境,以后可以将其扩展到更大的集群。由于 OpenShift 需要设置主节点和节点,因此我们至少需要托管在云、物理或虚拟机上的两台机器。

步骤 1 – 首先在两台机器上安装 Linux,其中 Linux 7 应该是最低版本。如果您拥有有效的 Red Hat 订阅,则可以使用以下命令完成此操作。

# subscription-manager repos --disable = "*"

# subscription-manager repos --enable = "rhel-7-server-rpms"

# subscription-manager repos --enable = "rhel-7-server-extras-rpms"

# subscription-manager repos --enable = "rhel-7-server-optional-rpms"

# subscription-manager repos --enable = "rhel-7-server-ose-3.0-rpms"

# yum install wget git net-tools bind-utils iptables-services bridge-utils

# yum install wget git net-tools bind-utils iptables-services bridge-utils

# yum install python-virtualenv

# yum install gcc

# yum install httpd-tools

# yum install docker

# yum update

一旦我们在两台机器上都安装了上述所有基础包,下一步就是在各自的机器上设置 Docker。

第 2 步– 配置 Docker,使其仅允许在本地网络上进行不安全的通信。为此,请编辑 /etc/sysconfig.conf 中的 Docker 文件。如果该文件不存在,则您需要手动创建它。

# vi /etc/sysconfig/docker
OPTIONS = --selinux-enabled --insecure-registry 192.168.122.0/24

在 master 机器上配置好 Docker 后,我们需要在两台机器之间设置无密码通信。为此,我们将使用公钥和私钥身份验证。

步骤 3 – 在主机上生成密钥,然后将 id_rsa.pub 密钥复制到节点机器的授权密钥文件中,这可以使用以下命令完成。

# ssh-keygen

# ssh-copy-id -i .ssh/id_rsa.pub root@ose3-node.test.com

完成上述所有设置后,接下来是在主机上设置 OpenShift 版本 3。

步骤 4 – 在主机上,运行以下 curl 命令。

# sh <(curl -s https://install.openshift.com/ose)

上面的命令将为 OSV3 进行设置。下一步是在机器上配置 OpenShift V3。

如果无法直接从 Internet 下载,则可以从https://install.openshift.com/portable/oo-install-ose.tgz作为 tar 包下载,安装程序可以在本地主机上运行。

一旦我们准备好设置,我们就需要从机器上 OSV3 的实际配置开始。此设置非常特定于测试实际生产的环境,我们已准备好 LDAP 和其他东西。

第 5 步– 在主机上,配置位于 /etc/openshift/master/master-config.yaml 下的以下代码

# vi /etc/openshift/master/master-config.yaml
identityProviders:
- name: my_htpasswd_provider
challenge: true
login: true
provider:
apiVersion: v1
kind: HTPasswdPasswordIdentityProvider
file: /root/users.htpasswd
routingConfig:
subdomain: testing.com

接下来,为默认管理创建一个标准用户。

# htpasswd -c /root/users.htpasswd admin

第 6 步– 由于 OpenShift 使用 Docker 注册表来配置镜像,我们需要配置 Docker 注册表。这用于在构建后创建和存储 Docker 镜像。

使用以下命令在 OpenShift 节点机器上创建一个目录。

# mkdir /images

接下来,使用在设置注册表时创建的默认管理员凭据登录到主机。

# oc login
Username: system:admin

切换到默认创建的项目。

# oc project default

第 7 步– 创建一个 Docker 注册表。

#echo '{"kind":"ServiceAccount","apiVersion":"v1","metadata":{"name":"registry"}}' | oc create -f -

编辑用户权限。

#oc edit scc privileged
users:
- system:serviceaccount:openshift-infra:build-controller
- system:serviceaccount:default:registry

创建和编辑图像注册表。

#oadm registry --service-account = registry --
config = /etc/openshift/master/admin.kubeconfig --
credentials = /etc/openshift/master/openshift-registry.kubeconfig --
images = 'registry.access.redhat.com/openshift3/ose-${component}:${version}' --
mount-host = /images

步骤 8 – 创建默认路由。

默认情况下,OpenShift 使用 OpenVswitch 作为软件网络。使用以下命令创建默认路由。这用于负载平衡和代理路由。路由器类似于 Docker 注册表,也运行在注册表中。

# echo '{"kind":"ServiceAccount","apiVersion":"v1","metadata":{"name":"router"}}' | oc create -f -

接下来,编辑用户的权限。

#oc edit scc privileged
users:
   - system:serviceaccount:openshift-infra:build-controller
   - system:serviceaccount:default:registry
   - system:serviceaccount:default:router

#oadm router router-1 --replicas = 1 --
credentials = '/etc/openshift/master/openshift-router.kubeconfig' --
images = 'registry.access.redhat.com/openshift3/ose-${component}:${version}'

步骤 9 – 配置 DNS。

为了处理 URL 请求,OpenShift 需要一个有效的 DNS 环境。需要此 DNS 配置来创建通配符,这是创建指向路由器的 DNS 通配符所必需的。

# yum install bind-utils bind

# systemctl start named

# systemctl enable named

vi /etc/named.conf
options {listen-on port 53 { 10.123.55.111; };
forwarders {
   10.38.55.13;
   ;
};

zone "lab.com" IN {
   type master;
   file "/var/named/dynamic/test.com.zone";
   allow-update { none; };
};

步骤 10 – 最后一步是在 OpenShift V3 主机上设置 github 服务器,这是可选的。这可以使用以下命令序列轻松完成。

#yum install curl openssh-server

#systemctl enable sshd

# systemctl start sshd

# firewall-cmd --permanent --add-service = http

# systemctl reload firewalld

#curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-

#yum install gitlab-ce

# gitlab-ctl reconfigure

完成上述设置后,您可以通过测试和部署应用程序进行验证,我们将在后续章节中详细了解。

觉得文章有用?

点个广告表达一下你的爱意吧 !😁