OpenShift-환경 설정
이 장에서는 OpenShift의 환경 설정에 대해 알아 봅니다.
시스템 요구 사항
엔터프라이즈 OpenShift를 설정하려면 활성 Red Hat 계정이 있어야합니다. OpenShift는 Kubernetes 마스터 및 노드 아키텍처에서 작동하므로 둘 다 별도의 머신에 설정해야합니다. 여기서 한 머신은 마스터 역할을하고 다른 머신은 노드에서 작동합니다. 둘 다 설정하려면 최소 시스템 요구 사항이 있습니다.
마스터 머신 구성
다음은 마스터 컴퓨터 구성을위한 최소 시스템 요구 사항입니다.
물리적, 가상 또는 모든 클라우드 환경에서 호스팅되는 기본 시스템.
해당 인스턴스에 필요한 패키지가있는 Linux 7 이상.
2 개의 CPU 코어.
최소 8GB RAM.
30GB의 내부 하드 디스크 메모리.
노드 머신 구성
- 마스터 머신에 대해 제공된 실제 또는 가상 기본 이미지.
- 머신에 Linux 7 이상.
- 1.6 이하 버전으로 설치된 Docker.
- CPU 코어 1 개.
- 8GB RAM.
- 이미지 호스팅 용 15GB 하드 디스크 및 이미지 저장 용 15GB.
OpenShift 설정에 대한 단계별 가이드
다음 설명에서는 나중에 더 큰 클러스터로 확장 할 수있는 OpenShift 랩 환경을 설정합니다. OpenShift에는 마스터 및 노드 설정이 필요하므로 클라우드, 물리적 또는 가상 머신에서 호스팅되는 최소 2 개의 머신이 필요합니다.
Step 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를 설정하는 것입니다.
Step 2− 로컬 네트워크에서만 안전하지 않은 통신을 허용하도록 Docker를 구성하십시오. 이를 위해 / etc / sysconfig에서 Docker 파일을 편집하십시오. 파일이 없으면 수동으로 만들어야합니다.
# vi /etc/sysconfig/docker
OPTIONS = --selinux-enabled --insecure-registry 192.168.122.0/24
마스터 머신에서 Docker를 구성한 후 두 머신간에 암호없는 통신을 설정해야합니다. 이를 위해 공개 및 개인 키 인증을 사용합니다.
Step 3 − 마스터 머신에서 키를 생성 한 후 id_rsa.pub 키를 노드 머신의 인증 된 키 파일에 복사합니다. 다음 명령을 사용하여 수행 할 수 있습니다.
# ssh-keygen
# ssh-copy-id -i .ssh/id_rsa.pub [email protected]
위의 모든 설정을 마쳤 으면 다음은 마스터 컴퓨터에서 OpenShift 버전 3을 설정하는 것입니다.
Step 4 − 마스터 머신에서 다음 curl 명령을 실행합니다.
# sh <(curl -s https://install.openshift.com/ose)
위의 명령은 OSV3에 대한 설정을 배치합니다. 다음 단계는 컴퓨터에서 OpenShift V3를 구성하는 것입니다.
인터넷에서 직접 다운로드 할 수없는 경우 다음에서 다운로드 할 수 있습니다. https://install.openshift.com/portable/oo-install-ose.tgz 설치 프로그램이 로컬 마스터 시스템에서 실행할 수있는 tar 패키지로.
설정이 준비되면 머신에서 OSV3의 실제 구성으로 시작해야합니다. 이 설정은 실제 프로덕션 환경을 테스트하기 위해 매우 구체적이며 LDAP 및 기타 사항이 있습니다.
Step 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
Step 6− OpenShift는 이미지 구성에 Docker 레지스트리를 사용하므로 Docker 레지스트리를 구성해야합니다. 빌드 후 Docker 이미지를 만들고 저장하는 데 사용됩니다.
다음 명령을 사용하여 OpenShift 노드 시스템에 디렉토리를 만듭니다.
# mkdir /images
다음으로, 레지스트리를 설정하는 동안 생성되는 기본 관리자 자격 증명을 사용하여 마스터 컴퓨터에 로그인합니다.
# oc login
Username: system:admin
기본 생성 된 프로젝트로 전환합니다.
# oc project default
Step 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
Step 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}'
Step 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; };
};
Step 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
위의 설정이 완료되면 테스트를 통해 확인하고 응용 프로그램을 배포 할 수 있습니다. 이에 대해서는 다음 장에서 자세히 알아볼 것입니다.