📜  OpenShift-环境设置

📅  最后修改于: 2020-10-31 13:50:43             🧑  作者: Mango


在本章中,我们将学习OpenShift的环境设置。

系统要求

为了设置企业OpenShift,需要有一个活动的Red Hat帐户。由于OpenShift在Kubernetes主节点和节点体系结构上工作,我们需要将它们两者都设置在单独的机器上,其中一台机器充当主节点,其他机器在节点上工作。为了同时设置两者,有最低系统要求。

主机配置

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

  • 在物理,虚拟或任何云环境上托管的基本计算机。

  • 至少在该实例上具有必需软件包的Linux 7。

  • 2 CPU核心。

  • 至少8 GB RAM。

  • 30 GB内部硬盘存储器。

节点机器配置

  • 为主机指定的物理或虚拟基础映像。
  • 计算机上至少装有Linux 7。
  • Docker安装的版本不低于1.6。
  • 1个CPU内核。
  • 8 GB RAM。
  • 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中编辑Docker文件。如果文件不存在,则需要手动创建。

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

在主计算机上配置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 https://install.openshift.com/ose)

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

如果您不能直接从Internet下载,则可以从tar软件包( https://install.openshift.com/portable/oo-install-ose.tgz)作为tar软件包下载,安装程序可以从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 Registry。

#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通配符需要此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

完成上述设置后,即可通过测试和部署应用程序进行验证,我们将在后续章节中进一步了解这些内容。