15. keystone 패키지 설치

yum --enablerepo=centos-openstack-train,epel -y install openstack-keystone

openstack-utils python-openstackclient httpd mod_wsgi

 

 

16. keystone 설정하기

vi /etc/keystone/keystone.conf

 

->line 431에 하기 내용 추가

memcache_servers = 10.0.0.30:11211

->line 572에 하기 내용 추가

connection = mysql+pymysql://keystone:123qwe@192.168.0.210/keystone

->line 2436 #을 지우기:

사용자 변환 but 내용만 삽입

 

그리고

su -s /bin/bash keystone -c "keystone-manage db_sync"

(keystone에서 생성한 keystone 데이터베이스에 필요한 테이블이 생기게 해준다.)

 

#internal server httpd401 장애발생

vi /etc/keystone/keystone.conf

connection = mysql+pymysql://keystone:123qwe@192.168.0.210/keystone

keystone 비번설정을 위에 작성 안할 경우 에러가 생긴다.

 

다음화면과 같이 완료 (참고 수정시 :set nu를 하면 왼쪽화면에 노란색번호가 나온다.)

 

17. mariadb rabbimq 작동 확인

systemctl start mariadb

systemctl start rabbimq

systemctl status 로 각각 확인 해줄 것

 

18. keystone manage 실행

keystone manage실행

keystone-manage fernet_setup --keystone-user keystone --keystone-group

keystone

keystone 초기세팅(사용자 및 그룹 지정)

keystone-manage credential_setup --keystone-user keystone keystone-group

keystone

 

keystone bootstrap작성

export controller=192.168.0.210 (내가 bridge 외부에 할당한 ip주소)

keystone-manage bootstrap\

> --bootstrap-password adminpassword\

> --bootstrap-admin-url http://$controller:5000/v3/ \

> --bootstrap-internal-url http://10.0.0.30:5000/v3/ \

> --bootstrap-public-url http://$controller:5000/v3/ \

> --bootstrap-region-id RegionOne

 

 

19. (selinux 에 있는 특정항목만 열어준다.)

setsebool -P httpd_use_openstack on

setsebool -P httpd_can_network_connect on

setsebool -P httpd_can_network_connect_db on

firewall-cmd add-port=5000/tcp --permanent

firewall-cmd reload

 

20. 웹 서버 및 방화벽 설정하기

ln s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/

systemctl start httpd

systemctl enable httpd

 

21. vi ~/keystonerc 환경변수 생성

a. vi keystonerc

export OS_PROJECT_DOMAIN_NAME=default

export OS_USER_DOMAIN_NAME=default

export OS_PROJECT_NAME=admin

export OS_USERNAME=admin

export OS_PASSWORD=adminpassword

export OS_AUTH_URL=http://192.168.0.210:5000/v3

=>210은 내가 할당한 ip 102로 설정함

export OS_IDENTITY_API_VERSION=3

export OS_IMAGE_API_VERSION=2

export PS1='[\u@\h \W(keystone)]\$' ->프롬프트 변경

 

b. chmod 600 ~/keystonerc

source keystonerc

echo “source ~/keystonerc” >> ~/.bash_profile

openstack token issue

openstack token issue 실행후 마주한 에러

#export controller=192.168.0.210 를 타입 안하고 넘어가니

unexpected exception for http://5000:v3/ Invalid URL 애러가 나왔다.

 

#internal server httpd500에러 이유;

부트스트랩에서 설정한 것과 연계되는 keystone 데이터베이스가 없어서 internal server 문제였다.

그래서 maria dbkeystone 데이터베이스 생성했다.

 

httpd500같은 에러 메시지 발생

-역시나 같은 데이터베이스가 생성이 되지 않았고, 문제는 vi /etc/keystone.conf에서

571라인에서 mysql+pymysql에서 맨 끝에 keystone의 철자가 틀렸다.

 

그리고 다시 sync 명령어를 해줌으로써 keystone 데이터베이스를 생성해야 openstack token issue에서 넘어간다.

 

#error the request you have made requires authentication auth와 관계된 것이

vi /keystone/keystone.conf 설정에

mysql+pymysql 에 넣는 비번설정을 해주지 않아 auth 문제가 일어난 것.

 

#openstack token issue 하니 다음과 같은 장애발생 해결못함

 

#vi ~/keystonerc를 누르니 하기와 같은 문제가 발생했다.

~ = home directory

 

다른 프로세스가 사용 중인지 확인

 

확인결과 사용중이 아니고, 비정상 종료된 적이 있는지에 해당되는 것으로 보여

ls al swp 파일이 여러개 있는 것을 확인

rm rf .keystone.sw*

파일 삭제완료

 

#home directory에 있어 vi ~/keystonerc 아닌 vi keystonerc로 확인

나머지 하기에 있는 것을 작성한다.

 

##내가 풀지 못한 장애

-bad request http400

-internal server http500 (해결함)

 

#-sync 명령어가 되지 않고 데이터베이스 생성이 되지 않았다.

알고보니 책에 있는 비번을 grant all privileges to glance에 사용 되는 비번과 그대로 사용해서 그런 것이었다.

그러니 비번을 항상 잘 체크하면서 작성할 것

 

#새롭게 알게 된 것

openstack project delete + id 번호를 써야 삭제가 된다.

+ Recent posts