Openstack Component Install
Keystone
OpenStack 시스템은 별도로 설치된 여러 주요 서비스로 구성됩니다. 이러한 서비스는 클라우드 요구 사항에 따라 함께 작동하며 Compute, Identity, Networking, Image, Block Storage, Object Storage, Telemetry, Orchestration 및 Database 서비스를 포함합니다. 이러한 프로젝트를 별도로 설치하고 독립 실행형 또는 연결된 엔터티로 구성할 수 있습니다.
이 섹션에서는 컨트롤러 노드에 OpenStack Identity 서비스(코드명 keystone)를 설치하고 구성하는 방법을 설명합니다. 확장성을 위해 이 구성은 요청을 처리하기 위해 Fernet 토큰과 Apache HTTP 서버를 배포합니다.
Database 생성
1. 데이터베이스 액세스 클라이언트를 사용하여 root사용자로 데이터베이스 서버에 연결합니다.
# mysql
2. keystone데이터베이스 생성 :
MariaDB [(none)]> CREATE DATABASE keystone;
3. keystone데이터베이스에 액세스 권한 부여 :
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' \
IDENTIFIED BY 'KEYSTONE_DBPASS';
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' \
IDENTIFIED BY 'KEYSTONE_DBPASS';
구성 요소 설치 및 구성
1. 패키지 설치 :
# apt install keystone
2. /etc/keystone/keystone.conf 파일을 아래와 같이 수정해줍니다.
[database]
# ...
connection = mysql+pymysql://keystone:KEYSTONE_DBPASS@controller/keystone
...
[token]
# ...
provider = fernet
3. Identity 서비스 database에 내용을 넣습니다.
# su -s /bin/sh -c "keystone-manage db_sync" keystone
4. Fernet 키 저장소 초기화:
# keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
# keystone-manage credential_setup --keystone-user keystone --keystone-group keystone
5. Identity service 부트스트랩 설정
# keystone-manage bootstrap --bootstrap-password ADMIN_PASS \
--bootstrap-admin-url http://controller:5000/v3/ \
--bootstrap-internal-url http://controller:5000/v3/ \
--bootstrap-public-url http://controller:5000/v3/ \
--bootstrap-region-id RegionOne
Apache HTTP 서버 구성
1. /etc/apache2/apache2.conf 파일을 편집하고 컨트롤러 노드를 참조하도록 옵션을 구성합니다.
...
ServerName controller
...
설치 완료
1. Apache 서비스를 다시 시작합니다.
# systemctl restart apache2
2. 적절한 환경 변수를 설정하여 관리 계정을 구성합니다.
# vi openrc.sh
export OS_USERNAME=admin
export OS_PASSWORD=ADMIN_PASS
export OS_PROJECT_NAME=admin
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_DOMAIN_NAME=Default
export OS_AUTH_URL=http://controller:5000/v3
export OS_IDENTITY_API_VERSION=3
Create a domain, projects, users, and roles
Identity service는 각 OpenStack 서비스에 대한 인증 서비스를 제공합니다. 인증 서비스는 도메인, 프로젝트, 사용자 및 역할의 조합을 사용합니다.
1. openrc 파일 등록
# . admin_adminrc.sh
2. example 도메인 생성을 합니다. (필수 아님)
# openstack domain create --description "An Example Domain" example
3. service 프로젝트 생성 : 이 가이드에서는 환경에 추가하는 각 서비스에 대해 고유한 사용자가 포함된 서비스 프로젝트를 사용합니다.
# openstack project create --domain default \
--description "Service Project" service
4. 일반(비관리자) 작업은 권한이 없는 프로젝트와 사용자를 사용해야 합니다. 예를 들어 이 가이드에서는 myproject프로젝트와 myuser 사용자를 생성합니다.
- 프로젝트 생성
# openstack project create --domain default \
--description "Demo Project" myproject
- 사용자 생성
# openstack user create --domain default \
--password-prompt myuser
- 프로젝트 및 사용자 에 myrole역할을 추가합니다.
# openstack role add --project myproject --user myuser myrole
스크립트 만들기
admin및 demo 프로젝트 및 사용자 에 대한 클라이언트 환경 스크립트를 생성 합니다. 이 가이드의 이후 부분에서는 이러한 스크립트를 참조하여 클라이언트 작업에 적절한 자격 증명을 로드합니다.
- 파일을 생성 및 편집하고 admin-openrc에 다음 내용을 추가합니다.
export OS_PROJECT_DOMAIN_NAME=Default
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=ADMIN_PASS
export OS_AUTH_URL=http://controller:5000/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2
# . admin-openrc
'Cloud > Openstack' 카테고리의 다른 글
openstack 최신 yoga버전 수동 설치 - Placement (0) | 2022.05.11 |
---|---|
openstack 최신 yoga버전 수동 설치 - Glance (0) | 2022.05.11 |
openstack 최신 bobcat 버전 수동 설치 - Environment (0) | 2022.05.11 |
[openstack] 이미지의 root계정 패스워드 변경하기 (0) | 2021.10.29 |
Openstack Instance VNC URL 접속법 (0) | 2021.06.09 |