Openshift-environment-setup

提供:Dev Guides
移動先:案内検索

OpenShift-環境設定

この章では、OpenShiftの環境設定について学習します。

システム要件

エンタープライズOpenShiftをセットアップするには、アクティブなRed Hatアカウントが必要です。 OpenShiftはKubernetesマスターおよびノー​​ドアーキテクチャで動作するため、両方を別々のマシンでセットアップする必要があります。1台のマシンがマスターとして機能し、他のマシンがノードで機能します。 両方をセットアップするには、最小システム要件があります。

マスターマシン構成

マスターマシン構成の最小システム要件は次のとおりです。

  • 物理、仮想、またはクラウド環境のいずれかでホストされるベースマシン。
  • そのインスタンスに必要なパッケージを備えた少なくとも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にはマスターとノードのセットアップが必要であるため、クラウド、物理、または仮想マシンのいずれかでホストされる少なくとも2つのマシンが必要になります。

  • ステップ1 *-最初に両方のマシンにLinuxをインストールします。Linux7が最小バージョンである必要があります。 これは、アクティブな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 [email protected]

上記のセットアップをすべて完了したら、次はマスターマシンでOpenShiftバージョン3をセットアップします。

  • ステップ4 *-マスターマシンから、次のcurlコマンドを実行します。
# sh https://install.openshift.com/ose)

上記のコマンドにより、OSV3のセットアップが行われます。 次のステップは、マシンでOpenShift V3を構成することです。

インターネットから直接ダウンロードできない場合は、ローカルマスターマシンでインストーラを実行できるtarパッケージとしてhttps://install.openshift.com/portable/oo-install-ose.tgzからダウンロードできます。

セットアップの準備ができたら、マシン上の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

上記のセットアップが完了したら、アプリケーションをテストおよびデプロイして検証できます。これについては、以降の章で詳しく説明します。