developerworks/Cloud

우분투에 오픈스택(Ubuntu Cloud Infrastructure) 설치

수상한 김토끼 2013. 3. 21. 18:34

아까전에 우분투에 델타클라우드를 설치했으니..

이제 오픈스택.. 정확히는 Ubuntu Cloud Infrastructure를 설치 해 보자..


얘는.. 오픈스택을 설치하려다 보니.. nova, swift 등등 설치 해야 할 것들이 너무나 많았고 또한 설치가 쉽지가 않아 계속 실패하다 찾다찾다 찾게되었는데.. 사실 나도 설치는 이번이 처음이다.. 회사에서 일 때문에 시간이 촉박하여 이미 오픈스택이 설치된 이미지를 가져다 부팅해서 사용했었으니.. 설치는 처음인 셈이다..


그래도 설치된 이미지가 있다는 말은.. 설치가 가능하다는 말과 같을 테니.. 용기를 내고 시키는 대로 설치를 해 보겠다.


sudo apt-get install maas maas-dhcp 를 설치 해 준다.


dhcp를 사용하는 경우에 mass-dhcp를 설치해야 하는데.. 나처럼 가난한 사람들은 대부분 공유기에 물려서 여러대를 사용할테니.. 대부분의 경우 이쪽이 되지 않을까 싶다.


중간에 dhcp 설정에 관한 정보를 물어본다.


ip 설정을 우선 물어보고

dhcp 대역을 물어보고

gateway를 물어본다.. 자신의 정보에 맞게 입력하면 된다.





입력 해 주면 설치가 끝난다.


maas에서 사용할 유저생성을 위해 sudo maas createsuperuser


$ sudo maas createsuperuser

Username (Leave blank to use 'root'): 아잉오잉에잉

E-mail address: 아잉@오잉.에잉

Password: 아잉오잉에잉으잉

Password (again): 아잉오잉에잉으잉

Superuser created successfully.


유저 생성이 끝나고.. maas 대시보드 화면으로 접속 해 보자

자신의 http://자신의ip/MAAS 접속주소다 나 같은 경우에는


http://192.168.0.8/MAAS/



이런 화면을 볼 수 있었다.


그럼 아까 만든 계정으로 로그인을 시도..



노트가 하나도 없다는 말과 함께.. sudo maas-import-isos 를 해 달라는 문구가 뜬다..

사실 아까 로그인 하기 전 화면에도 떳던 문구다..


그럼.. sudo maas-import-isos


시간이 오래 걸린다.. 클라우드 게스트로 사용할 os의 iso파일들을 다운 받는 것을 알 수 있다.

기다린다...


오랜 시간이 지나고 나서 작업이 완료되면.. 이제 노트들을 추가 해 줘야 한다고 하는데

밑의 사진과 같이 preference 항목을 선택하면



아래와 같이 키를 볼 수 있는 화면이 나온다.




이 키를 긁어서 다음 명령을 실행해야 하는데


maas-cli login maas http://192.168.0.8/MAAS/api/1.0 mass-cli login maas mrQcv9yTBC7cKkaGqL:CE9Kjt9g7Unu8KP8wC:jLuqBeU3SKnTGTe6ZLT5tTB8RQuVzFeA


이 명령은 maas-cli login *profile-name* *hostname* *key* 의 순서로 조합된다.


그런데.. 두둥.. 다음과 같은 결과가 발생한다.


$ sudo maas-cli login maas http://192.168.0.8/MAAS/api/1.0 mrQcv9yTBC7cKkaGqL:CE9Kjt9g7Unu8KP8wC:jLuqBeU3SKnTGTe6ZLT5tTB8RQuVzFeA

sudo: maas-cli: command not found


maas-cli 라는 커맨드를 찾을 수가 없다..
찾자.. 대체 어찌 된 영문인지 찾기 시작했다..

여기까지와서 다시 찾아보니.. 우선 우분투의 환경설정부터가 잘못되어 있다는 것을 발견했다.
maas-cli의 문제는 가보지도 못하고 기본 환경부터 문제가 발견되었으니.. 일단 요것부터 잡아보도록 하자..

네트워크부터 설정을 한다.. 가상네트워크 인것 같다.

sudo iptables -I INPUT -p udp --dport 69 -j REJECT
sudo ip6tables -I INPUT -p udp --dport 69 -j REJECT
sudo apt-get install ebtables
for i in AA:BB:CC:DD:EE:F0 AA:BB:CC:DD:EE:F1 AA:BB:CC:DD:EE:F2 AA:BB:CC:DD:EE:F3 ; do 
sudo ebtables -I INPUT -p IPv4 --ip-prot udp --ip-dport 67 -s $i -j DROP ; done

아마도.. 가상의 네트워크 환경을 만들어서.. mac 주소를 할당해 주는 과정인 것 같은데..

여기까지 진행하고.. 한번 재부팅을 해서 네트워크 환경을 만들어 준 다음에..

sudo apt-get install dnsmasq debmirror 을 설치

그리고 다시 http://192.168.0.8/MAAS 접속해서 node들을 추가 해 준다.. maas-cli가 아닌 대시보드상에서 추가하게 되는데 아까 만들어뒀던 AA:BB:CC:DD:EE:F0 ~ 3번 까지의 이름을 가지는 노드를 만들어 준다.


노드명은 친절하게 node-aabbcc.... 이런식으로 만들어 준다고 한다.. 먼가 특별한 이름을 주고 싶은게 아니라면 나처럼 입력하지 않아도 잘 생성된다.


아까는 0개의 노드가 있었는데 이제 4개가 되었다.


이제 주주를 설치하러 가야된다.. 한숨돌리고.. 여기서 우선 maas에 admin 유저가 아닌 사용자를 하나 등록해 주는 절차를 거친다.




admin이 아닌 계정을 만드는 이유는 maas의 계정과 juju의 계정을 따로 가져가기 위해서.. 암튼 다 만들고 나서 우분투에도 juju를 설치할 계정을 만들어 준다.


그리고 우분투의 기본계정(maas설치)과 추가계정(juju설치)에서 ssh-keygen -t rsa 명령을 사용해서 ssh key를 생성한다.


생성된 공개키..

/home/id/.ssh/id_rwa.pub 파일의 내용을 열어서.. maas에 등록 해 준다.. 2개 모두 다..


이렇게 등록 해 주면 된다..

그리고 juju를 설치 해 준다.
sudo apt-get install juju charm-tools

여기까지 일단 써두고.. 다시 정리 해야겠다.. 퇴근 시간이 이미 지나버려서..

juju를 설치하고 ~/.juju/environments.yaml 파일을 생성해 준다.
파일의 내용은

default: maas
environments:
  maas:
    type: maas
    maas-server: http://192.168.0.8:80/MAAS
    maas-oauth: dsfrQcv9yTBC7cKkaGqL:CE9Knu8KP8wC:jLuqBeU3SKnTGTe6ZLT5tTB8RQuVzFeA
    admin-secret: nothing
    default-series: precise

이런식으로 작성 해 주는데 maas-oatuh 에는 maas화면에서 보이는 maas-api-key를 복사해다 적어준다.


입력이 끝나면 juju bootstrap 명령을 실행 해 준다. 


안된다.. 우선 잠정 실패..



그런거 없고 devstack으로 한큐에 설치 끝 http://devstack.org/guides/single-machine.html