티스토리 뷰

vSphere 환경에서 네트워크를 구성하고 Openshift의 Bootstrap, Master node, Worker node를 구성하는 프로젝트를 시작해 보겠습니다.

 

vSphere 콘솔로도 인프라 구축의 전 과정을 진행할 수 있지만, 본 프로젝트에서는 IaC 툴인 Ansible을 사용해 코드로 모든 구성 과정을 관리하도록 합니다.

 


1 실습을 위한 VM Folder 생성

 

우선 실습을 위해 vSphere 서버의 Projects 폴더 하위에 PRT-06 이라는 이름의 폴더를 생성하도록 하겠습니다.

지금부터 구성할 모든 인프라(DC, Router, Bastion, Openshift nodes 등)는 PRT-06 폴더 아래에 생성할 것입니다.

 

---
- hosts: localhost
  vars_files: ./vars.yaml

  tasks: 
    - name: 01. Create a Project folder
      community.vmware.vcenter_folder:
        hostname: '{{ vcenter_hostname }}'  # 192.168.3.10
        username: '{{ vcenter_username }}'  # S06@vclass.reca2
        password: '{{ vcenter_password }}'  # VMware1!
        validate_certs: no
        datacenter: '{{ datacenter_name }}' # Datacenter
        folder_name: '{{ project_id }}'     # PRT-06
        parent_folder: '{{ parent_folder }}'# 4.Projects
        state: present
      register: sub_folder_creation_result
      delegate_to: localhos

 

또한 앞으로 yaml 파일에 사용할 변수들을 따로 저장해 관리하는 vars.yaml 파일을 생성합니다.

 

ansible_python_interpreter: /bin/python3

project_id: "PRT-06"
vcenter_hostname: "192.168.3.10"
vcenter_username: "S06@vclass.reca2"
vcenter_password: "VMware1!"
datacenter_name: "Datacenter"
parent_folder: "4.Projects"
esxi_hostname: "esxi-01.vclass.reca2"
esxi_username: "root"
esxi_password: "VMware1!"
private_net: "{{ project_id + '-Openshift' }}"

 

ansible-playbook -vvv 01.yaml 해당 파일을 실행합니다.

 

 

에러가 뜨지 않고 성공적으로 실행되었다면 vSphere 콘솔을 확인합니다.

 

Ansible로 생성한 PRT-06 폴더

 


2 스위치 생성

 

네트워크 연결을 위해 스위치를 생성합니다.

이 때, VyOS를 통해 라우터를 생성할 것이므로 업링크가 없는 스위치를 생성합니다.

 

---
- hosts: localhost
  vars_files: ./vars.yaml

  tasks:    
    - name: 02. Create Project Standard vSwitch
      community.vmware.vmware_vswitch:
        hostname: '{{ esxi_hostname }}' # esxi-01.vclass.reca2
        username: '{{ esxi_username }}' # root
        password: '{{ esxi_password }}' # VMware1!
        validate_certs: no
        switch: '{{ project_id }}'      # PRT-06
      delegate_to: localhost

    - name: 03. Waiting 10 seconds for vSwitch creating
      wait_for:
        timeout: 10
      delegate_to: localhost

 

switch: 생략할 수 없는 반드시 필요한 옵션으로 switch_name: 도 사용 가능

validate_certs: 인증서 오류를 무시하도록 no 설정

 

*** 스위치 생성에 일정 시간이 필요하므로 연달아 작업하기 전 Waiting 하는 작업을 추가했습니다.

 

PRT-06 이름의 스위치 생성 확인

 


3 스위치에 포트 그룹 생성하기

 

PRT-06-Openshift 라는 이름의 포트 그룹을 만들어 주겠습니다.

이 때 생성할 포트 그룹의 이름은 서버 전체에서 unique한 이름을 갖도록 합니다.

(본 프로젝트의 환경이 multi vlan이 아니므로 vlan 값은 따로 설정하지 않았습니다.)

 

---
- hosts: localhost
  vars_files: ./vars.yaml

  tasks: 
  	- name: 04. Add Openshift Portgroup
      community.vmware.vmware_portgroup:
        hostname: "{{ vcenter_hostname }}" # 192.168.3.10
        username: "{{ vcenter_username }}" # S06@vclass.reca2
        password: "{{ vcenter_password }}" # VMware1!
        esxi_hostname: "{{esxi_hostname}}" # esxi-01.vclass.reca2
        validate_certs: no                 # 인증서 오류 시 선언
        switch: "{{ project_id }}"         # PRT-06
        portgroup: "{{ private_net }}"     # PRT-06-Openshift
      delegate_to: localhost

 

PRT-06 스위치에 생성된 포트 그룹 PRT-06-Openshift 확인

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함