2025/07 11

오픈스택 클러스터링 & 인프라 서비스와 배포

오픈스택 클라우드 배포와 자동화클러스터링의 기본 개념과 openstack 서비스의 역할openstack이 어떻게 고가용성을 제공하는지, 클라우드 컨트롤러를 구성하는 주요 서비스들의 기능과 중요성을 설명함openstack의 핵심 서비스 및 공통 인프라 서비스 이해각 서비스(keystone, nova...)와 공통적으로 필요한 인프라(메시지 큐, DB..)의 역할과 구성요소를 설명함Openstack Ansible(OSA)를 이용한 실제 배포 단계OSA를 사용하여 openstack 환경을 설정하고 배포하는 구체적인 명령 및 설정 파일을 안내함클러스터링의 기본 개념 및 openstack 서비스의 역할클러스터링은 두개 이상의 서버 용량을 묶어서 시스템의 고가용성을 높이는 기술임 즉, 서비스가 중단되지 않고 지속적..

오픈스택 아키텍처

VM 프로비저닝VM을 실행하는 과정은 Nova, Neutron, Cinder, glance등 인스턴스의 구성 요소를 형성하는 주요 서비스들의 상호작용임프로비저닝:사용할 준비가 되도록 자원을 할당하고, 필요한 설정이나 소프트웨어까지 포함해 배포하는 일련의 과정ex)사용자가 CLI 또는 대시보드(Horizon)을 통해 Nova API에 VM 생성을 요청함Nova API는 keystone을 통해 사용자 인증 및 권한 부여를 확인함Nova API는 glance에 이미지 정보를 요청하고, cinder에 볼륨을 생성하도록 요청함Nova API는 메시지 버스를 통해 Nova-scheduler에 VM 배치를 요청함Nova-scheduler는 Compute node의 리소스 상태를 확인하고 최적의 node를 선택함Nov..

Nova 설치 & Keystone 연동

이번에는 Nova를 구축해볼 것이다필수 패키지 설치sudo apt updatesudo apt install nova-api nova-conductor nova-scheduler nova-novncproxy placement-api python3-novaclient Nova용 데이터베이스 생성 및 권한 부여-- 데이터베이스 생성CREATE DATABASE nova_api;CREATE DATABASE nova;CREATE DATABASE nova_cell0;CREATE DATABASE placement;-- nova 사용자 생성 및 권한 부여CREATE USER 'nova'@'localhost' IDENTIFIED BY 'openstack';CREATE USER 'nova'@'%' IDENTIFIED BY ..

Neutron 네트워크(2) - 아키텍처, 구현

오픈스택 네트워킹 시작하기오픈스택 네트워킹은 가상 인스턴스의 연결성을 제공하는 동시에,서로 다른 테넌트(사용자 그룹)의 트래픽을 분리하고 상호 간섭을 방지함이런 프로젝트 서비스를 Neutron이라고 함즉, 뉴트론을 통해 테넌트가 직접 자신만의 네트워크를 설계하고,여러 네트워크의 토폴리지를 관리하며, 네트워크를 서로 연결하여 네트워킹 서비스를 배포할 수 있음뉴트론의 핵심 아키텍처뉴트론의 구성 요소:API 서버, 플러그인, 에이전트뉴트론 아키텍처는 크게 API 서버, 플러그인, 에이전트 세 가지 핵심 요소로 구성메시지 버스를 통해 유기적으로 상호작용하며 복잡한 네트워킹 요청을 처리함뉴트론 API 서버모든 네트워킹 서비스 요청을 수신하는 관문 역할일반적으로 오픈스택 컨트롤러 노드에 설치되며,확장성과 가용성 요..

Neutron 네트워크 (1)

오픈스택을 위한 네트워크 준비오픈스택인 Neutron은 SDN으로 알려진 네트워킹 방식에 의존함SDN을 통해 네트워크 관리자가 추상적이고 자동화된 방식으로 네트워크 서비스를 관리할 수 있게 해줌오픈스택 네트워킹이란 무엇인가?오픈스택 네트워킹은 다른 오픈스택 서비스(nova, glance,keystone...)와 독립적으로 설치할 수 있는 독립형 서비스임ex)네트워크 노드에 Neutron만 설치하고,컨트롤러/컴퓨트 노드에는 Nova, Glance, Keystone 등 필요 서비스만 설치할 수 있음일부 테스트·개발 환경에서는 Neutron만 별도로 띄워네트워크 가상화 기능만 실험/활용하는 것도 가능오픈스택 네트워킹은 neutron-server라는 서비스를 사용하여 사용자에게 API를 노출하고, 추가 저리를 ..

Neutron 이해를 위한 기초 네트워크

네트워크 기본 요소가상 머신 (VM)네트워크 인터페이스 카드 (NIC)물리 서버가 네트워크에 연결되기 위한 하드웨어 장치NIC Bonding: 여러 물리 NIC를 하나로 묶어 대역폭을 늘리거나(링크 통합), 한 NIC가 고장 나도 다른 NIC가 대신 작동하여 네트워크 이중화를 제공하는 기술IP Address인터넷에 연결된 모든 기기가 서로를 식별하고 통신하기 위해 사용하는 고유한 숫자Subnet하나의 큰 IP 주소 공간을 여러 개의 작은 논리적 네트워크로 나눈 것을 의미함각 서브넷은 가상 머신에 할당될 수 있는 IP주소들의 pool을 정의하고, DHCP 서비스를 통해 IP 주소를 자동으로 할당할 수도 있음Port가상 네트워크에 가상 머신이나 다른 네트워크 서비스가 연결되는 지점을 의미함가상 네트워크에서는..

glance에서 keystone 서비스 연동

keystone에서 glance 연동과 서비스 설정ubuntu 환경 24.04LTS에서 '서비스 테넌트 및 서비스 사용자 구성과', 'openstack 서비스(glance)에서 keystone서비스를 연동'하는 방법을 알아볼거임MariaDB(MySQL) 클라이언트 접속sudo mysql -u root -p-- 데이터베이스 생성CREATE DATABASE glance;-- 사용자 생성 및 권한 부여 (비밀번호는 본인이 설정한 값으로 변경)GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY 'glancedb';GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY 'glance..

Key Stone install & managment

Keystone 설치와 설정1. MariaDB에 keystone 데이터베이스와 계정 설정mysql -uroot -pCREATE DATABASE keystone;GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'openstack';GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'openstack';FLUSH PRIVILEGES;EXIT; 로그인 비밀번호가 openstack임mysql -ukeystone -popenstack -hcontroller keystone Keystone 및 관련 패키지 설치sudo apt install keystone py..

Openstack Installation

Historyopenstack을 옛날에 쓸때는 VirtualBox같은 가상 환경에 여러개의 네트워크 인터페이스를 설정한 ubuntu 가상 머신을 만드는 것이 일반적이었음VirtualBox의 CLI의 VBoxManage로 vboxnet0 (public), vboxnet1(private)같은 Host-Only 네트워크를 생성하고,VM에 하나는 인터넷 접속용 (NAT), 다른 하나는 Host-Only(고정 IP를 할당해 로컬 통신)를 할당했음이때 ifupdown 시스템을 통해 /etc/network/interfaces 파일을 직접 수정하여 고정 IP를 설정하였으나현재는 netplan 또는 NetworkManager를 사용하는 경우가 많고, GUI나 yaml 방식을 많이 사용함하지만, ifupdown의 방식인 ..

Openstack Storage - Cinder/Manila/Ceph

CinderOpenStack의 Cinder 서비스는 VM의 하드 드라이브를 위한 영구적인 블록 스토리지 관리를 제공함 이전에는 nova-volume의 일부였지만, 기능이 많아지면서Cinder로 분리됨Cinder 볼륨은 가상머신에 추가 하드디스크처럼 붙이며, VM이 꺼져도 데이터는 유지됨Cinder의 주요 기능:볼륨 관리: 볼륨 생성 또는 삭제를 허용함스냅샷 관리: 볼륨 스냅샷을 생성하거나 삭제할 수 있음인스턴스에 볼륨 연결/분리: 가상 머신에 볼륨을 연결하거나 분리할 수 있음볼륨 복제: 기존 볼륨을 복제할 수 있음스냅샷에서 볼륨 생성: 스냅샷을 기반으로 새 볼륨을 생성할 수 있음이미지를 볼륨으로 복사 및 그 반대: 이미지를 볼륨으로 또는 볼륨을 이미지로 복사할 수 있음Cinder의 네트워크 연결 방식Ci..