PackStack 을 이용해 OpenStack 을 설치하는 과정 & 설치 후 사용자가 접근하는 과정
- Aws 는 이용자 입장
- OpenStack 은 설치 및 관리자 ( 클라우드 서비스에 대한 추가적인 개발, 변경 ) 입장
- PackStack 은 스크립트 파일을 생성한다
- 사용자가 설치 서비스, 설정등을 스크립트에 작성
- PackStack 에서 스크립트 파일을 읽는다
- 요구 사항에 따라 패키지를 repository 에 요청
- 저장소에서 받아온 패키지로 데몬 설치 및 실행
- 서비스 설정 정보를 DB ( MariaDB ) 에 등록
- 사용자가 인증
- 인증 정보를 DB 에 전송
- 사용자에게 인증 정보를 Token 으로 전달
- 사용자는 Token 과 Api 주소과 함께 명령을 API 로 전달
- Api 서버는 해당 요청을 받고 DB 에 접근
- 요청한 Data 를 사용자가 원하는 형식으로 전달
- 안정적인 네트워크 속도
- 설치를 위한 충분한 Cpu, Ram
systemctl set-default multi0user.target
- OpenStack 설치를 위한 패키지 저장소 : /etc/yum.respod.d/저장소목록
yum -y install centos-release-openstack-rocky # 오픈 스택을 PackStack 을 통해 설치하기 위하여 오픈스택 패키지 저장소를 등록시킨다
yum -y install -y openstack-packstack # 팩스택을 설치
packstack --gen-answer-file=answer.txt
- answer.txt 를 생성하자
- MariaDB 설치는 무조건 필요하다
- MariaDB 에 대한 계정 정보도 설정한다
- KeyStone 에 등록할 ADMIN 계정 인증 정보와 일반 사용자인 DEMO 계정 인증 정보도 설정한다
- Heat 는 오케스트레이션 도구이다. 이는 AWS 의 Cloudformation, Docker Stack , Docker Compose , Terraform 과 같은 IAC 와 유사하다. Heat 서비스는 AWS 와 연계가 가능하다
- nova 서비스는 compute, cinder / glance / head / horizon / neutron / keystone 서비스는 control 에 설치된다
- 만약, Node 를 추가했다면, 추가한 Node 의 주소를 Hosts 에 추가하면 된다
packstack --answer-file=answer.txt
- 해당 파일에 써있는 내용을 바탕으로 각 Node 에 패키지를 설치하고, 설치된 서비스에 설정을 반영한다
- admin 계정 정보와 인증 성공시 출력 프롬프트에 대해 정의되있다. 위의 정보들은 해당 계정으로 접속하면 전역 변수로 확인할 수 있다
- unset OS_SERVICE_TOKEN 은 기존에 있는 TOKEN 을 해제하고, 새로 인증해서 사용하겠다는 설정이다
- 위와 같이 인증 성공시 출력 프롬프트 내용을 바꾸면
- 위와 같이 인증 성공시 설정한 프롬프트가 출력된다
- 파일에 설정된 전역 변수를 확인 가능하다
- user 와 network list 확인
- show 는 상세 정보를 확인할 수 있다. private network 의 상세 정보를 확인해보자
- keystone 에서 인증을 거치게 되면 Token 의 만료 시간이 정해진다. 이를 늘려야 한다
- 웹 서비스도 TIME OUT 이 있으므로 기간을 늘려야 한다
vi /etc/keystone/keystone.conf
- keystone 서비스 구성 파일에 들어가자
- 만료 시간을 8시간 = 28800초 로 설정하자
vi /etc/openstack-dashboard/local_settings
- dashboard 설정 파일에 들어가자
- 웹 서비스 만료 시간을 늘려주자
[root@localhost ~]# openssl rand -hex 10
58715e459821edd9c6bd
[root@localhost ~]# openssl rand -hex 10
4bcbcef3c69ddc87b6f3