티스토리 뷰
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 콘솔을 확인합니다.
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 하는 작업을 추가했습니다.
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
'IaC > Ansible' 카테고리의 다른 글
[Ansible] Ad-hoc 명령 사용하기 (0) | 2023.03.19 |
---|---|
[Ansible] 구성 관리의 대표 Ansible 알아보기: 설치와 Inventory 구성 (0) | 2023.03.16 |
- Total
- Today
- Yesterday
- Git
- Linux
- Google Cloud DNS
- Window Server Manager
- EKS
- Ansible
- RECA
- aws cli
- IAM
- VPC
- AWS
- VM Tools
- rocky9
- Local Zones
- IAC
- kubernetes
- Route53
- Route53 비용 정책
- kubectl
- k8s
- vsphere
- Docker
- Azure DNS
- Windows Server
- ycampus
- 에티버스러닝
- Vmware
- 클라우드 DNS 서비스
- github
- redhat
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |