OpenVSwitch
(장현정 작가님의 "오픈스택을 다루는 기술" 서적을 참고하였음을 밝힙니다.)
Open vSwitch(이하 OVS)는 클라우드 서비스 내(內) 가상의 Network Bridge와 Flow rule을 사용하여
효율적으로 가상머신에 패킷을 포워딩하기 위한 가상의 스위치
참고링크 https://m.blog.naver.com/love_tolty/220237750951
네트워크 어댑터 추가하기 (host only, no dhcp, eth2)
브릿지 만들어 이용해보기
1. ovs-vsctl add-br [브릿지이름] #브릿지만들기
작업] ovs-vsctl add-br br-eth2
2. ovs-vsctl add-port [브릿지이름] [인터페이스카드이름] #브릿지 포트에 eth1을 추가
작업] ovs-vsctl add-port br-eth2 eth2
3. 레이어2 에이전트 설정( vi /etc/neutron/plugins/ml2/ml2_conf.ini )
마지막 줄에 추가(다른 섹션과 겹치지 않게)
[ml2_type_flat]
flat_networks = physnet1
4. OSV 에이전트 설정( vi /etc/neutron/plugins/ml2/openvswitch_agent.ini )
마지막 줄에 추가(다른 섹션과 겹치지 않게)
[ovs]
bridge_mappings = physnet1:br-eth2
5. 가상 네트워크 생성
openstack network create --project [project ID] --share \
--provider-network-type flat
--provider-physical-network [ovs에 설정된 브릿지네트워크ID] \
[가상 네트워크 이름]
작업1] projectID=$(openstack project list | grep service | awk '{print $2}')
-> service project의 두번째 필드 값을 추출해 변수에 저장(첫번째 필드는 |(파이프))
awk는 필드값을 추출해 표시하는 명령어 입니다. 작은 따옴표를 이용해 패턴을 표현하거나 표준입력함수를 이용합니다.
$0은 모든 필드값을 나타내며, 이후 1,2,3,4 이런식으로 필드 값을 정해 줄 수 있습니다.
예를 들어 ls -al을 사용했다라고 한다면
-rw-------. 1 root root 13889 12월 11 16:25 .bash_history
요런 형태로 나타나게 되는데,
ls -al | awk '{ print $3 }' 이라고 입력하면 3번째 필드인 root만 표시되게 됩니다.
물론 awk '{ print $3,4 }' 와 같이 콤마를 이용해 한번에 여러필드를 출력하는 것도 가능합니다.
위의 작업은 service라는 이름의 프로젝트를 검색해 ID만 추출하여 변수 projectID에 넣는 과정입니다.
작업2] openstack network create --project $projectID \
--share --provider-network-type flat \
--provider-physical-network physnet1 sharednet1
6. 서브넷 10.0.0.0/24를 만들어 둔 네트워크(sharednet1)에다가 만들어 넣습니다.
openstack subnet create subnet1 \
--network sharednet1 --project $projectID --subnet-range 10.0.0.0/24 \
--allocation-pool start=10.0.0.200,end=10.0.0.254 \
--gateway 10.0.0.2 --dns-nameserver 10.0.0.2
=> 10.0.0.0/24 대역대의 네트워크인 subnet1 이라는 서브넷을 만들어 sharednet1 이라는 이름으로 미리 정의해 두었던 가상의 네트워크에 넣어 주고 있습니다.
7. 여기까지가 기본적인 세팅의 완료. 이제 인스턴스 생성가능
'신입개발자로 취업하기까지 > 오픈스택' 카테고리의 다른 글
HORIZON_ DASHBOARD 설치 및 설정 (0) | 2020.07.21 |
---|---|
NOVA설치 및 설정 (0) | 2020.07.21 |
Glance 이미지 관리하기(버전확인,활성화,이미지목록확인) (0) | 2020.07.21 |
Glance 데이터베이스설정 및 사용자/서비스/엔드포인트 생성/데이터베이스파일생성 (0) | 2020.07.21 |
OPENSTACK 프로젝트 및 사용자, 역할 생성하기 (0) | 2020.07.21 |