반응형

openshift 는 redhat에서 서비스하고 있는 PaaS 플랫폼이다.

특별히 XX카드사는 2018년에 계정계클라우드 전환으로 OCP에 대한 내용을 많은 이들에게 보여줬고,

kubernetes를 보완한 플랫폼으로 쉽게(?) 컨테이너 환경을 운영할 수 있다.

또 클라우드 파트너사와 협업하여 AWS, AZURE 에 정말 쉽게 openshift를 올릴 수 있다.

 

Azure 에는 ARO 라는 이름의 서비스가 존재하는데, 게시글 제목처럼 Azure Redhat Openshift 를 줄인 말이다.

해당 글은 MS Docs 를 참고하였고 public 환경 aro 구축을 리뷰하겠다.(명령어 실행환경은 bash이다)

 

아, 먼저 aro 아키텍처는

이렇게 azure에서 보여주고있다.

 

변수 정의

생성할 리전위치, 애저구독ID, 리소스그룹명, 클러스터이름, 네트워크이름을 정의한다.

LOCATION="australiaEast"
SUBSCRIPTION_ID="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
RESOURCEGROUP="Z-AE-DEV-RG"
CLUSTER="aro-cluster-dev"
AROVNET="aro-vnet"

az cli 로그인 및 작업위치 지정

az login
az account set --subscription $SUBSCRIPTION_ID

리소스 공급자 등록

RedhatOpenshift, 컴퓨팅, 스토리지, 인증에 대한 등록

az provider register -n Microsoft.RedHatOpenShift --wait
az provider register -n Microsoft.Compute --wait
az provider register -n Microsoft.Storage --wait
az provider register -n Microsoft.Authorization --wait

vCPU 할당 갯수 체크

ARO는 cpu 할당 갯수가 최소 40개가 필요하기 때문에 자기가 사용할 VM으로 검색해보고 부족하면 늘려야한다 

az vm list-usage -l $LOCATION --query "[?contains(name.value, 'standardDSv3Family')]" -o table
az vm list-usage -l $LOCATION --query "[?contains(name.value, 'standardESv3Family')]" -o table

애저 포탈 > 구독 > Usage + quotas 에서 사용할 Compute 제품명으로 확인

리소스그룹 생성

az group create --name $RESOURCEGROUP --location $LOCATION

가상 네트워크 생성

VNET을 만들고, 마스터/워커 서브넷을 생성한 뒤 마스터 서브넷에서 서브넷 프라이빗 엔드포인트 정책 사용을 하지 않도록 설정

az network vnet create -g $RESOURCEGROUP -n $AROVNET --address-prefixes 10.0.0.0/22
az network vnet subnet create -g $RESOURCEGROUP --vnet-name $AROVNET -n master-subnet --address-prefixes 10.0.0.0/23 --service-endpoints Microsoft.ContainerRegistry
az network vnet subnet create -g $RESOURCEGROUP --vnet-name $AROVNET -n worker-subnet --address-prefixes 10.0.2.0/23 --service-endpoints Microsoft.ContainerRegistry
az network vnet subnet update --name master-subnet -g $RESOURCEGROUP --vnet-name $AROVNET --disable-private-link-service-network-policies true

redhat pull secret 

operator 사용을 위해 redhat 사이트에 로그인 해서 secret 을 다운 받는다.

 

console.redhat.com

 

console.redhat.com

ARO Install

az aro create -g $RESOURCEGROUP -n $CLUSTER --vnet $AROVNET --master-subnet master-subnet --worker-subnet worker-subnet --pull-secret @pull-secret.txt  --master-vm-size Standard_D8s_v3 --worker-vm-size Standard_E4s_v3

--master-vm-size, --worker-vm-size 는 선택사항이고,

--worker-count 1 으로 워커노드 수량도 정의할 수 있다.

 

만약 private cluster 를 구축하고싶으면 아래 옵션을 붙이면 된다.

    --apiserver-visibility Private --ingress-visibility Private

 

설치에는 약 30~40분이 걸림

 

클러스터 접근

설치가 완료되면 아래 명령어 순서로

계정정보, 클러스터조회, 클러스터 자격증명조회, 클러스터세부조회 할 수 있다.

az aro list-credentials --name $CLUSTER --resource-group $RESOURCEGROUP
az aro list --resource-group $RESOURCEGROUP
az aro list-credentials --name $CLUSTER --resource-group $RESOURCEGROUP
az aro show --name $CLUSTER --resource-group $RESOURCEGROUP

클러스터 삭제

az aro delete --name $CLUSTER --resource-group $RESOURCEGROUP

 

ARO를 구축하면 기본적으로 azureDisk 스토리지가 탑재된다.

Worker Node VM 사양에 따라 붙일 수 있는 pv 갯수 제한이 있으며, AzureDisk 는 RWO만 지원한다.

RWX pv를 생성하려면 azureFile storage를 붙여서 사용하면된다.

 

끝.

 

참고사이트

 

자습서 - Azure Red Hat OpenShift 4 클러스터 만들기

Azure CLI를 사용하여 Microsoft Azure Red Hat OpenShift 클러스터를 만드는 방법 알아보기

docs.microsoft.com

 

반응형
복사했습니다!