본문 바로가기
VMware

[VMware] vCSA7 | vCenter Server Appliance 7 Install with CLI

by 인프라보이 2022. 6. 3.

VMware vSphere vCenter Server Appliance 7.0.3 을 설치하는 방법에 대한 포스팅입니다.
6.7 버전까지는 DNS가 없어도 잘 설치가 되었는데 7.x 부터는 DNS없이는 설치가 까다로워 졌다고 합니다.
GUI로 설치하다가 설치단계 2(Stage 2)에서 계속 실패를 하여, 하다하다 CLI까지 도전하게 되었네요.
구글링에도 DNS이슈로 설치 실패 케이스가 많다고 합니다.
Stage 2에서 vSphere Client installing 과정에서 계속 멈춰있다가, vcsa OS의 hosts파일에 자신의 IP를 넣어주고 넘어가긴 했습니다.
또한 Tiny (2vCPU, 12GB Memory)로 설치하면 설치과정에서 메모리를 전부 소진하여 진행이 안되었습니다. 최소로 Small, 호스트 여유가 좀 있다면 Medium으로 진행하면 좋을 거 같습니다.
vCenter Server Appliance는 현재기준 가장 최신 버전으로 진행하였습니다.
ISO Name : VMware-VCSA-all-7.0.3-19717403.iso


조건1 : 작업자 PC(Windows)는 vcsa를 설치할 ESXi와 통신이 되어야 함.
vcsa는 ESXi와 같은 IP대역 또는 통신이 되어야 함.
통신 조건 : https://ports.esp.vmware.com/home/vSphere-7

VMware Ports and Protocols

The VMware Ports and Protocols tool is a portal that enables you to view all the ports needed by various VMware products, solutions, and services in a single pane. You can select all VMware products that you intend to deploy in your environment from the si

ports.esp.vmware.com

조건2 : ESXi와 vCenter Server는 NTP서버와 정상적으로 통신이 되어야 함.
조건3 : ESXi의 /etc/hosts 파일에 vCenter IP주소를 지정해줄 것. (DNS가 없을 경우 필수)

1. ISO 다운로드 완료 후 설치 시작
ISO를 마운트하고 아래 경로에서 JSON파일을 편집할 수 있는 경로로 복사합니다.
아래 E:\드라이브는 제 PC의 가상 CDROM 경로입니다.

E:\vcsa-cli-installer\templates\install\embedded_vCSA_on_ESXi.json
copy from ISO & paste to workspace


2. Workspace로 가져온 json파일 수정
템플릿으로 제공된 json파일을 수정합니다. GUI로 많이 설치해봤으면 CLI에 어떤걸 넣어야 할지 알 수 있습니다.
DNS가 없는 환경이라 DNS Server IP입력란에 vCenter가 사용할 IP를 넣었습니다. (구글링에는 저기에 Gateway를 넣는 경우도 있다고 하네요..)

{
    "__version": "2.13.0",
    "__comments": "Sample template to deploy a vCenter Server Appliance with an embedded Platform Services Controller on an ESXi host.",
    "new_vcsa": {
        "esxi": {
            "hostname": "ESXi IP주소",
            "username": "root",
            "password": "ESXi root 패스워드",
            "deployment_network": "vcsa가 사용할 네트워크 스위치(포트그룹)",
            "datastore": "사용 가능한 데이터스토어명"
        },
        "appliance": {
            "__comments": [
                "You must provide the 'deployment_option' key with a value, which will affect the vCenter Server Appliance's configuration parameters, such as the vCenter Server Appliance's number of vCPUs, the memory size, the storage size, and the maximum numbers of ESXi hosts and VMs which can be managed. For a list of acceptable values, run the supported deployment sizes help, i.e. vcsa-deploy --supported-deployment-sizes"
            ],
            "thin_disk_mode": true,
            "deployment_option": "small",
            "name": "vCenterServerAppliance7"
        },
        "network": {
            "ip_family": "ipv4",
            "mode": "static",
            "system_name": "vCenter가 사용할 IP",
            "ip": "vCenter가 사용할 IP",
            "prefix": "24",
            "gateway": "vCenter가 사용할 IP대역의 Gateway",
            "dns_servers": [
                "vCenter가 사용할 IP"
            ]
        },
        "os": {
            "password": "vCenter OS의 root 패스워드",
            "ntp_servers": "ESXi가 사용하는 NTP서버 주소",
            "ssh_enable": true
        },
        "sso": {
            "password": "SSO_administrator의 패스워드",
            "domain_name": "vsphere.local"
        }
    },
    "ceip": {
        "description": {
            "__comments": [
                "++++VMware Customer Experience Improvement Program (CEIP)++++",
                "VMware's Customer Experience Improvement Program (CEIP) ",
                "provides VMware with information that enables VMware to ",
                "improve its products and services, to fix problems, ",
                "and to advise you on how best to deploy and use our ",
                "products. As part of CEIP, VMware collects technical ",
                "information about your organization's use of VMware ",
                "products and services on a regular basis in association ",
                "with your organization's VMware license key(s). This ",
                "information does not personally identify any individual. ",
                "",
                "Additional information regarding the data collected ",
                "through CEIP and the purposes for which it is used by ",
                "VMware is set forth in the Trust & Assurance Center at ",
                "http://www.vmware.com/trustvmware/ceip.html . If you ",
                "prefer not to participate in VMware's CEIP for this ",
                "product, you should disable CEIP by setting ",
                "'ceip_enabled': false. You may join or leave VMware's ",
                "CEIP for this product at any time. Please confirm your ",
                "acknowledgement by passing in the parameter ",
                "--acknowledge-ceip in the command line.",
                "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
            ]
        },
        "settings": {
            "ceip_enabled": true
        }
    }
}


3. vCenter Server Deploy
embedded_vCSA_on_ESXi.json 수정이 완료되었다면 저장 후 명령 프롬프트(cmd)를 실행하여 배포를 시작합니다.
Deploy를 수행하는 실행파일은 ISO파일에 있습니다.

E:\vcsa-cli-installer\win32\vcsa-deploy.exe

cmd에서 위 경로로 이동한 후 아래와 같이 명령을 내려줍니다.

E:\vcsa-cli-installer\win32\vcsa-deploy.exe install C:\Users\Administrator\Documents\vcsa7\embedded_vCSA_on_ESXi.json --accept-eula --acknowledge-ceip

위 명령을 날리면, json파일에 별다른 특이사항이 없을 경우 정상적으로 배포가 됩니다.
vCenter Server 배포하면서 배포에 필요한 내용들과 같이 진행사항을 볼 수 있습니다.



4. vCenter Server Deploy complted successfully
template.json 파일만 잘 구성하면 vCenter Server를 GUI로 설치하면서 계속 지켜봐야 되는 필요성이 없습니다.
vCenter설치가 1시간~2시간 소요되는 점을 보면, 잘 구성된 template으로 설치해놓고 다른 일을 할 수가 있을 거 같네요.

  vCenter 메인화면 보면서 이렇게 기분좋은 적이 없었네...




X. vCenter Server Deploy 실패
GUI와 동일한 구간(VMware Appliance Management Service... 63%)에서 계속 멈추어 있음.

(의심1) vcsa small Type(4 vCPU, 19GB Memory)인데, 메모리를 거의 다 사용하고 있어서 부하 때문에 진행이 안되는 것으로 추정해본다. 구글링에서도 Tiny에서 Small로 변경하고 성공한 사례가 있다고 하는데, 나는 Small인데도 쩔쩔매는 vcsa상태를 보고있다...
(의심2) DNS가 없는 상태이다 보니, vCenter Server에만 DNS를 자기자신으로 바라보는게 아니라 ESXi에도 hosts파일에 vCenter IP를 지정해야 한다.
=> 의심1은 사실 부하 먹는거 같긴한데 의심2가 원인으로 확정이 되었음.

728x90

댓글