반응형

1. Opensetack OVN Network란?

* OVN ?

Open Virutal Network(OVN) 약어로 OVS(Open vSwitch) 팀에서 개바한 오픈소스이다.

기존 OVS의 기능을 보완하고 가상 L2, L3 오버레이, 보안그룹, DHCP 서비스와 같은 가상 네트워크 추상화를 제공한다.

가상화 플랫폼(VM, Container)에서 모든 유형의 워크로드에 대한 가상 네트워킹 기능에 대한 접근 방식 제공한다.

 

* Openstack OVN Network Architecture

OVN은 OVS기능과 함께 수천개의 하이퍼바이저로 확장할 수 있는 높은 확장성과 향상된 성능, 안정성을 보여준다.

1) OVN database

 (1) ovn-northbound db(ovn_nb_db) 

  - OVN ML2 플러그인의 논리적 네트워크 구성이 저장되는곳으로 컨트롤러 노드에서 실행됨

 (2) ovn-northd(ovn_northd)

  - 논리적 네트워크 요소를 논리적 데이터 경로 흐름으로 변환하고 OVN SB DB에 전달하며 컨트롤러 노드에서 실행됨

 (3) ovn-southbound db(ovn_sb_db)

  - 변호나된 논리적 데이터 경로 흐름을 저장하고 컨트롤러 노드에서 실행됨

 (4) ovn-controller(ovn_controller)

  - ovn_sb_db와 연결하고 OVS 역할을 하여 네트워크 트래픽을 제어하고 모니터링하며 컴퓨트노드에서 실행됨

 (5) ovn-meta-agent(neutron_ovn_metadata_agent

  - API 요청을 프록시하는데 사용되는 OVS 인터페이스, 네트워크 네임스페이스 및 HAProxy 프로세스 관리하기 위한 Haproxy 인스턴스 생성.

 (6) ovs database(openvswitch_db)

  - ovn_nb_db, ovn_sb_db를 호스팅하고 ovs-vswitchd와 상호작용하여 ovs db를 호스팅하는 역할

 

Openstack OVN

 

 

 

 

Openstack Kolla-ansible OVN Network

Openstack OVN 굿어시 네트워크 구성은 위와 같다고 보며 각각 호스트에 다음 서비스들이 설치가 된다.

Controller : ovn_northd, ovn_controller, openvswitch_vswitchd, openvswitch_db. ovn_sb_db, ovn_nb_db

Compute : neutron_ovn_metadata_agent, ovn_controller, openvswitch_vswitchd, openvswitch_db

설치 이후 각각 br-ex, br-int 브릿지가 생성되며 br-ex는 외부 네트워크, br-int는 내부 통신을 위해 설정된다.

(참조 : kolla-ansible xena 설치 가이드)

 

Openstack Network 생성시 tap~(숫자) 테넌트 네트워크가 생성되며 이것은 br-int 브릿지의 tab 디바이스가 생성된다.

외부 통신을 위해 라우터 생성하고 네트워크 연결시 br-int와 br-ex 연결 되며 컴퓨트 노드에 ovnmeta-fdea8b75-ba46-4e51-a85c-9f599c92cffb 이라는 네임스페이스가 생성되어 테넌트 관리를 할 수있다.

 

 

 

 

 

 

 

 

https://docs.openstack.org/networking-ovn/pike/admin/refarch/refarch.html

반응형
반응형
  • 현재 Kolla-ansible Ussuri 버전 설치시 '인스턴스 크기 변경' 기능이 동작하지 않음
  • 크기 선택창과 기능이 동작하지 않아 해당 기능 해결 작성
  • 참고사항

https://review.opendev.org/c/openstack/horizon/+/808102 

 

https://review.opendev.org/c/openstack/horizon/+/808102

 

review.opendev.org

 

  • 이슈사항

- 오픈스택 기능인 '인스턴스 크기 변경' 기능이 동작하지 않으며 팝업창 또한 뜨지 않음

- '가상서버 크기 변경' 선택시 하단과 같은 오류 발생

- 에러 발생 : Danger -> 오류가 발생했습니다. 나중에 다시 시도하십시오.

 
  • 패치방안

1) 맨 하단 첨부파일 압축 해제

2) Openstack_Resize_file_view 업로드 및 파일 안 스크립트 수행

 $ cd /Openstack_Resize_file_view/
 $ chmod +x *.sh
 
 $ ./horizon_resize_fuction.sh

3) Openstack_Resize_file_function 업로드 및 파일 안 스크립트 수행

$ cd /Openstack_Resize_file_fucntion/
$ chmod +x *.sh
$ ./horizon_resize_view.sh

4) horizon container 재시작

$ docker restart horizon

 

이후 해당 기능 정상 사용 가능.

  • 아직 오픈스택쪽 패키지에서 업데이트 되지 않아 수동으로 업데이트함
  • 하지만 프로젝트 제한 용량은 안나온다..

 

 

Openstack_Resize_File.zip
0.06MB

- 해당 첨부파일

 

 

 

 

반응형
반응형

1. 특정 컨테이너 서비스 재설치

$ kolla-ansible -i inventory/multinode deploy --tags heat   <- heat 부분 서비스 명
$ kolla-ansible -i inventory/multinode deploy -t octavia

 

2. 특정 컨테이너 서비스 설정 적용 이후 재적용

$ kolla-ansible -i inventory/multinode reconfigure -t horizon

 

3. 컴퓨트 노드 추가 설치 

$ kolla-ansible -i inventory/multinode pull --limit (host명)
$kolla-ansible -i inventory/multinode deploy --limit (host명) -vvv

 

4. 설치된 컨테이너 서비스 모두 삭제

$ kolla-ansible -i multinode destroy --yes-i-really-really-mean-it
반응형
반응형

* 가상서버(VM)를 가진 Compute 노드가 중지되었을 경우 해당 가상서버 다른 노드로 이동 시켜 부팅하기

 

$ root@con01:~# docker exec -it -uroot bash

 

$ (mariadb)[root@con01 /]# mysql -uroot -p

 

$ MariaDB [(none)]> use nova;

 

$ MariaDB [(nova)]> select * from instances where uuid='해당 가상서버 UUID';

 

$ MariaDB [(nova)]> update instances SET host='옮길 서버 노드 명칭' where uuid='해당 가상서버 UUID';

 

$ MariaDB [(nova)]> exit

 

$ (mariadb)[root@con01 /]# exit

 

$ openstack server reboot uuid

 

참고 : https://docs.openstack.org/nova/latest/admin/node-down.html

 

 

반응형

+ Recent posts