0. Open Stack 실습 환경
- 미리 준비된 Controller 서버와 Compute 서버를 사용한다.
- Controller server
- 오픈스택 전체를 제어
- br-ex -> 외부망에 연결될 브릿지.
- eth1 -> compute 시스템과의 통신용
- Compute server
- 하이퍼바이저를 제공
1. Dashboard
- web brouser에서 http://192.168.122.10/dashboard 주소로 접속하여 Dashboard가 동작하는지 확인
2. Login
- User Name : admin
- Password
-> Controller server에서 cat /root/keystonerc_admin으로 확인할 수 있다.
3. Dashboard Menu
- 좌측 상단의 admin은 현재 작업 프로젝트
- 우측 상단의 admin은 현재 로그인된 사용자
- Project : instance, network, object storage를 생성하고 관리 할 수 있다.
- Admin : 관리자(admin) 역할을 가지고 사용자만 표시되며, 오픈스택 전체 모니터링 및 리소스 관리를 위해 사용한다.
- Identity : project, user, group, role 을 관리할 수 있으며, 모든 사용자가 다 볼 수 있지만, 관리자 역할을 가진 사용자만 관리할 수 있다.
- project(=Tenant)
- project → Horizon (대시보드 웹 프로젝트)
- Tenant → keystone
- 오픈 스택에 있는 리소스들(이미지, 라우터, 아이피 등..)을 논리적으로 분리시키는 파티션 역할
- 하나의 기업별로 만들수도있고 부서별, 팀별로도 만들 수 있다.
- 하나의 프로젝트는 여러 사용자가 들어갈 수 있다.
- 사용자는 프로젝트에 할당 될 때 항상 하나 이상의 role(역할)을 지정한다.
- services → 오픈스택 서비스를 위한 프로젝트
- user
- 사용자는 여러 프로젝트에 속할 수 있다.
- role
- admin
-> 오픈 스택의 전체 관리자
-> 프로젝트의 관리자가 아님
-> 프로젝트를 넘어서 모든 리소스를 관리 할 수 있다. - member
- admin
- group
- LDAP server가 있을때만 유용
- 사용자를 그룹에 넣고 그룹을 프로젝트에 넣을 수 있다.
- project(=Tenant)
4. project 생성
- 프로젝트는 사용자가 리소스를 사용할 수 있는 범위이며 필요시 프로젝트에서 사용할 리소스 쿼터를 지정할 수도 있다.
- 최초 설치 시 기본적으로 두개의 프로젝트가 생성된다.
- admin 프로젝트는 admin 사용자가 속한 프로젝트
- services 프로젝트는 오픈스택의 서비스 사용자가 속한 프로젝트
- identity -> project -> create project
- Name = test-proj
- Quotas 설정이 필요한 경우 VCPUs, instance, volume, RAM, floating IP등을 설정한다.
5. user 생성
- identity -> users -> create user
- User Name = test-user
- Password 지정
- Primary Project = test-proj
- Role = _member_
-> 일반 사용자 역할
6. Flavor 관리
- flavor는 인스턴스 생성 시 인스턴스에서 사용할 하드웨어 사이즈를 정의해 높은 프로파일이다.
- 기본적으로 5개가 만들어져있으며, 필요시에 따라 추가적으로 생성하거나 편집할 수 있다.
- VCPUs → 가상의 CPU → overcommit 제공 → 물리적인 메모리보다 더 많이 할당할 수 있다. → 실제 사용량은 물리적인 메모리보다 더 있을 수 없다.
VCPU에 4개가 할당되어있다고 해서 그만큼 쓸 수 있는것은 아니다. - CPU pinning
- 하이퍼바이저에 다 있는 기술.
- 실제 CPU를 전용으로 사용. CPU 메모리를 share
- 비싼 Flavor를 쓸수록 할당량이 더 많아짐 → 더 많이 사용할 수 있음
- Flavor의 디스크들은 Nova가 제공. → 인스턴스 지우면 같이 지워짐.
- 디스크
- 블록 장치
- Nova가 제공. 원래 블록장치를 제공하는 cinder와는 상관없음.
- instance를 지우면 셋 다 지워짐 → 안지워지게 할 수 없다.
- root 디스크
- root에 마운트 됨.
- Ephermeral 디스크
- 임시 디스크 /mnt에 마운트 된다.
- 빈 디스크를 지원하는것.
- 데이터를 영구적으로 저장하려는 목적의 디스크는 아니다. → 인스턴스를 지우면 같이 지워지기 때문에
- Swap 디스크
- 페이징을 하기 위함
- RX/TX
- receiver, transiver
- 디스크들의 성능을 제어
- 1.0이 기본
- 공용
- Flavor → 기본적으로 관리자만 만들 수 있도록 되어있고 모든 사용자가 사용할 수 있게 되어있다.
- Name = test.tiny
- VCPUs = 1
- RAM = 256M
- Root DIsk = 1G
7. Image 생성
- Admin -> Compute -> Images -> Create Images
- Image Name = centos7
- File 추가
-> 없으면 이미지를 http://docs.openstack.org/image-guide/obtain-images.html 에서 받을 수 있다. - Format = QCOW2
- 커널과 램디스크는 아마존 머신 이미지를 사용할때만 사용
- 아키텍처 → x86 등.. 정할 수 있다.
- 최소디스크, 최소 RAM → flavor와 상호작용 이 값을 지정해 놓으면 이 이하의 flavor는 사용 할 수 없다.
- 가시성
- 관리자만이 가시성을 설정할 수 있다.
- public -> 모든 프로젝트에서 사용 가능
- private -> 해당 사용자의 프로젝트 내에서만 사용 가능
- 보호 → 예 → 다른사람이 지우지 못하게 한다.
- qemu-img info 명령어로 이미지의 info를 확인할 수 있다. 사용중이면 볼 수 없음. 하이퍼바이저가 설치될 때 자동으로 설치되는 명령어이다.
8. 외부 네트워크 생성
- 인스턴스가 사용할 내부 네트워크는 어떤 사용자나 만들어서 사용할 수 있지만, 외부 네트워크는 관리자만 설정 할 수 있다.
- 외부 네트워크는 실제 외부로 연결되는 네트워크 대역으로 설정해야 하며, 이 외부 네트워크는 나중에 유동 IP 생성에 사용될 네트워크이다.
- Network의 종류 -> Management Network, Tunnel, External(Internet), Storage
- Admin -> Network -> Networks -> Create Network
- Name = ext-net (external network)
- Project = admin
- Provider Network Type = Flat
- Physical Network = extnet
- Controller에서 grep PHYSNET answers.txt
-> CONFIG_NEUTRON_OVS_EXTERNAL_PHYSNET=extnet
- Controller에서 grep PHYSNET answers.txt
- VLAN은 터널링 프로토콜이 아니다.
- Flat → 평면 네트워크. L2 네트워크
- 로컬 → 가상의 네트워크 구성.
- 물리적인 네트워크 → Network에서 External과 연결한 network의 이름 지정. 여러개가 있을 수 있으므로 지정.
- 오픈스택의 노드의 역할에 따라 어떤 네트워크가 연결되어야하는지 인지해야된다.
- 네트워크 이름 ext-net을 선택하면 설정 확인 및 서브넷을 만들기가 가능하다.
- VID가 다르다. ⇒ 다른 네트워크
- Subnets -> Create Subnet
- Subnet Name = ext-subnet
- Network Address = 192.168.122.0/24
- Gateway IP = 192.168.122.1
- 네트워크 주소 설정은 실제 외부 네트워크 대역과 같은 네트워크 대역으로 설정한다.
- 게이트 웨이 IP도 실제 외부 게이트웨이 주소를 할당해야한다.
- 인스턴스는 외부 네트워크에 직접 연결되지 않으므로 DHCP 사용 설정을 해제한다.
- DHCP를 openstack에서 external을 만들 때 사용하면 물리네트워크에 설정되어있는 DHCP가 있기 때문에 DHCP 서버가 두대가 돌아가게된다. 사용하면 안됨.
- Pools 할당 부분은 유동 IP 가 할당될 범위를 지정한다.
- Allocation Pools = 192.168.122.100,192.168.122.199
- DNS Name Servers = 8.8.8.8
- pool
- IP의 범위 지정
- DHCP를 사용할 때 -> DHCP 임대범위
- DHCP 사용 안할 때 -> Floating 범위
- 관리자가 구성해야 할 부분은 완료되었으므로 우측 상단의 admin을 클릭해 로그아웃 한다.
Open Stack 운영.2
2020/07/01 - [Infra/프라이빗 클라우드 인프라] - Open Stack 운영.2(user)
Open Stack 운영.3
2020/07/02 - [Infra/프라이빗 클라우드 인프라] - Open Stack 운영.3 (user)
'Infra > 프라이빗 클라우드 인프라' 카테고리의 다른 글
Open Stack 운영.3 (user) (0) | 2020.07.02 |
---|---|
Open Stack 운영.2(user) (0) | 2020.07.01 |
Instance (0) | 2020.07.01 |
Open Stack 소개 (0) | 2020.06.30 |
Cloud Service 개념 정리 (0) | 2020.06.29 |
댓글