먼저 CENTOS7 가상머신 한대를 설치한다. 각각의 용량을 설정해주고, 네트워크 어댑터 하나를 추가하여서 Host-only로 설정하고 가상화 체크한다.
ens33 NAT카드 IP 설정!
Host-only 카드 IP 설정!
Selinux의 기능을 꺼야 한다.
기초적인 설정은 끝이 나게 된다. Openstack 설치를 위해 권장하는 사항인 방화벽과 네트워크 매니저를 멈춰준 후 network를 시작하겠다.
방화벽, 네트워크 매니저 disable, stop network enable,. Start 입력!
yum install -y centos-release-openstack-(rocky or stein) (오픈스택의 저장소 설치)
yum install -y openstack-packstack (레드햇(CentOS) 계열이기 떄문에 packstack 설치!)
데비안 계열에 설치하는 경우 packstack이 아닌 devstack설치 한다.
packstack --gen--answer-file duck.com (generate한 answer-file(설정파일) 생성)
ls를 통해 잘 생성되었음을 확인할 수 있다.
Vi duck.com (생성한 duck.txt(answer file)) 여러가지 설정을 answer file에서 설정할 수 있다. 중요하고 기초적인 설정만 체크하고, pw 간단히 설정했다.
* 기초적인 설정
11 CONFIG_DEFAULT_PASSWORD=It1 (비밀번호 설정)
53 CONFIG_PANKO_INSTALL=y (이벤트 추적 기능)
60 CONFIG_HEAT_INSTALL=y
79 CONFIG_NTP_SERVERS=kr\.pool\.ntp\.org
94 CONFIG_CONTROLLER_HOST=1.0.0.1
97 CONFIG_COMPUTE_HOSTS=1.0.0.1
101 CONFIG_NETWORK_HOSTS=1.0.0.1
137 CONFIG_STORAGE_HOST=1.0.0.1
141 CONFIG_SAHARA_HOST=1.0.0.1
274 CONFIG_AMQP_HOST=1.0.0.1
296 CONFIG_MARIADB_HOST=1.0.0.1
302 CONFIG_MARIADB_PW=It1
306 CONFIG_KEYSTONE_DB_PW=It1
326 CONFIG_KEYSTONE_ADMIN_PW=It1
342 CONFIG_KEYSTONE_LDAP_URL=ldap://1.0.0.1
782 CONFIG_LBAAS_INSTALL=y (로드 밸런스 설치)
812 CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS=openvswitch
844 CONFIG_NEUTRON_L2_AGENT=openvswitch
862 CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=extnet:br-ex (openstack 카드)
873 CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-ex:ens33 (nat 카드)
896 CONFIG_NEUTRON_OVS_TUNNEL_IF=(ens34)
여기에 hostonly 카드 이름 넣어야 함 (멀티노드 설치시 cont,comp 통신 카드)
1185 CONFIG_PROVISION_DEMO=n (데모 설치는 하지 않아도 된다.)
790(방화벽), 794(VPN) 설정도 가능하다.
어느 정도 설정이 끝이 난 answer파일을 지정 해주기 위해 명령어 실행!
packstack --answer-file duck.com (시간이 오래 걸림)
Ifconfig로 확인해본 결과 ens33의 ip가 없어지고 br-ex로 바뀌었다.
자세히 확인해보기 위해 네트워크 설정 파일에 들어갔다.
새로 생겨난 br-ex에는 type이 OVSBridege로 바뀌었음을 확인할 수 있다
기존의 ens33에는 설정했던 값들이 사라지고 type이 OVSPort로 바뀌었다.
익스플로러에서 1.0.0.1 접속(br-ex의 ip) 후 로그인 (answer파일 설정 패스워드)
설치와 접속이 완료 된 후에 외부 네트워크를 생성하여 주겠다.
공급자 네트워크 유형은 FLAT를 선택하고 물리적인 네트워크는 answerfile에서 설정했던 이름 입력하고, 891번 줄(CONFIG_NEUTRON_OVS_EXTERNAL_PHYSNET=extnet) 외부 네트워크 꼭 체크하여야 한다.
서브넷 이름과 네트워크 주소의 대역과 게이트웨이 ip 입력한다. (게이트 웨이 ip를 생략할 경우 알아서 설정하여 준다.)
ip자동할당을 위해 dhcp 설정 체크 한 후 pools에 범위를 할당하고 dns입력!
외부 네트워크 설정이 끝난 후 내부 네트워크도 설정하여야 한다. 역시 공급자 네트워크 유형은 answer file에서 설정했던 vxlan으로 설정한다. 구분 ID는 1부터 16777215까지의 숫자 중 임의의 값을 넣어주면 된다.
805번 줄(CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES=vxlan)
내부 네트워크 대역은 172.16.16.0대역으로 설정하여 주었다.
DHCP 사용과 DNS를 설정하면 내부 네트워크 설정이 완료 된다.
네트워크 생성이 된 후 라우터를 생성하겠다.
이름과 네트워크 설정 후 라우터 생성!
라우터가 무사히 생성되었다.
라우터가 생성된 후 외부네트워크와 내부네트워크를 라우터를 통해 연결해야 한다.
중앙에 라우터를 클릭한 후 인터페이스 추가를 누른다.
인터페이스 추가 되면 무사히 내부네트워크와 외부네트워크가 연결된다. 이때 router의 interface와 gateway가 down되어있는 경우가 있다. 그럴 때는 작동시키기 위해 패키지를 깔고 명령어를 실행하여야 한다. (yum install -y openstack-utils, systemctl start neutron-l3-agent) active로 바뀌는 것을 확인한다.
Active가 된 것을 확인한 후 openstack(centos)에서 라우터의 게이트웨이인 1.0.0.112로 ping을 보내서 무사히 ping이 가야 한다.
인스턴스 생성 후 ping과 ssh접속을 위해 icmp와 ssh포트를 열기 위해 보안 그룹생성하겠다. Linux라는 이름으로 생성하여 보겠다.
생성이 완료 된 후 규칙 관리를 선택한다.
내보내는 포트는 전체적으로 설정되어 있는데 들어오는 포트는 설정되어 있지 않다. 그래서 포트에 들어올 수 있게 하기 위해 규칙을 추가해주겠다.
모든 들어오는 icmp기능을 사용!
SSH 규칙도 추가!
그 후 SSH 접속을 위한 키를 만들기 위해 Key 페어를 생성하겠다. 이름은 open으로 설정하겠다.
키 페어 생성 버튼을 누르게 되면 다음과 같은 창이 뜨게 되는데 키 파일을 저장했다.
인스턴스를 만들기 위한 이미지를 생성하겠다.
CentOS7 이미지는 openstack사이트에서 미리 받아 두었고 그 이미지를 선택!
포멧은 이미지파일의 형식에 맞게 qcow2선택한 후 생성한다.
이미지가 무사히 생성되었다.
CentOS의 이미지에 맞는 알맞은 규모를 설정하기 위해 flavor을 생성하겠다. 5개의 크기파일이 기존에 존재하지만 임의로 만들겠다.
test파일로 만들겠다. CPU 1대, RAM 1024MB, 디스크 10GB로 설정하겠다.
인스턴스를 생성하기 전 기본 설정은 모두 끝이 났다. 인스턴스는 일반적으로 실행 임의
의 프로세스, 클래스의 현재 생성된 오브젝트를 가리킨다. 인스턴스를 생성하겠다.
이름은 CentOS로 하겠다.
이미지에 생성한 centos를 할당한다.
Flavor 임의로 만든 m1.test를 할당한다.
네트워크는 PRI인 내부네트워크를 설정하겠다.
보안그룹은 아까 임의로 만들어 설정해둔 Linux로 할당한다.
키 페어 역시 임의로 만든 키 페어로 설정한다.
그 동안 유동 ip 설정을 위해 floating ip에서 생성하겠다.
Pool을 외부 네트워크인 1.0.0.0/24대역으로 설정해주고 ip할당 선택한다.
전원 상태가 Running이 나오면 무사히 생성되었다는 것을 알 수 있다. 외부 네트워크 ip를 설정하기 위해 유동 ip연결을 클릭한다.
아까 floating에서 만든 1.0.0.106을 유동 ip로 연결한다.
인스턴스가 무사히 잘 생성되었음을 토폴로지에서 볼 수 있다.
인스턴스 로그를 확인하면 부팅 중임을 확인할 수 있다.
어느 정도 부팅이 끝난 후에 보안그룹에서 SSH포트를 열어놓았기 떄문에xshell에서 centOS 인스턴스(1.0.0.106)로 접속하겠다.
Centos 7의 이미지에 기존에 있던 사용자 centos 입력!
사용자 키를 선택한다.
가져오기를 통해 아까 키페어를 통해 저장한 키 파일을 선택한다.
무사히 접속이 완료됨을 확인할 수 있다.
이 생성한 인스턴스가 무사히 작동됨을 확인해보기 위해 web서비스를 실행하여 보겠다.
먼저 관리자 권한인 root 계정으로 이동한 후 httpd 패키지를 설치하겠다.
기본문서 설정을 위해 index파일을 설정하겠다.
Hello 출력하기 위한 코드 생성!
웹 서비스를 시작하기 전에 centos 인스턴스의 보안 그룹에 http인 80번 포트가 개방되어 있어야 한다. 기존에 개방되어 있지 않으면 보안 그룹 편집을 이용한다.
http서비스가 가능해지면 httpd 기능을 시작한다.
1.0.0.106으로 접속하는 순간 hello가 출력되는 웹 페이지가 나온다. 잘 작동이 된다.
'클라우드 > Private Cloud (XEN, VMWARE,OPENSTACK)' 카테고리의 다른 글
Vmware ESXi 6.x migration (1) | 2019.07.16 |
---|---|
XEN SERVER Migration (0) | 2019.07.15 |
VMware ESXi 6.7 설치 후 설정 (0) | 2019.07.12 |
Xen Center에서 가상머신 생성(NFS 사용) (0) | 2019.07.11 |
Xen Sever 7.0설치 (Vmware) (0) | 2019.07.11 |