기본 콘텐츠로 건너뛰기

[OpenStack] CentOS 8에 OpenStack Client 설치 (PIP)

How to install Open Stack Client on CentOS 8 (PIP Installation)

OpenStack Client는 명령줄 도구로 네트워크를 통해 OpenStack 구성 요소, 즉 Compute, Identity, Image, Object Storage 및 Block Storage API를 함께 관리할 수 있다.

이 문서에서는 CentOS 8 버전에 OpenStack Client를 설치하고 구성하는 방법을 정리한다.

환경 검증

$ cat /etc/redhat-release
CentOS Linux release 8.2.2004 (Core) 

STEP 0. 환경 갱신

$ sudo yum update
# or
$ sudo dnf update

STEP 1. Python2 PIP 설치 (옵션)

$ sudo yum -y install python2-pip
# or
$ sudo dnf -y install python2-pip

STEP 2. Python3 PIP 설치 (권장)

$ sudo yum -y install python3-pip
# or
$ sudo dnf -y install python3-pip

Step 2. OpenStack Client 설치

아래 명령을 실행해서 OpenStack Client를 설치한다.

$ sudo pip3 install -y python-openstackclient

참고
sudoroot 사용자로 설치를 하면 권장하지 않는다면 경고메시지가 나온다.
이 경고 메시지는 권한이 있는 경로에 설치하지 말고, 현재 사용자로 한정된 구역으로 설치하라는 의미가 된다.

WARNING: Running pip install with root privileges is generally not a good idea. Trypip3 install --userinstead.

다만 위의 경고대로 설치를 하면 /usr/local/bin에 설치가 되는 것이 아니라 ~/.local/bin으로 설치가 된다. 따라서 환경 변수의 경로부분에 추가를 해 줘야 한다.

Step 3. 확인

아래 명령을 실행해서 OpenStack CLI 설치를 확인한다.

$ which openstack
/usr/local/bin/openstack

$ openstack --version
openstack 5.4.0

환경 설정하기

OpenStack에 대한 세세한 제어를 위해서는 OpenStack CLI를 사용해야 하며, 이 명령을 사용하기 위해 아래와 같이 변수를 정의한 ~/keystonrc 파일을 생성한다.

export OS_PROJECT_DOMAIN_NAME=Default
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_NAME=admin
export OS_USERNAME=<user name>
export OS_PASSWORD=<user password>
export OS_AUTH_URL=<openstack url>
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2

생성한 파일의 환경 변수로 적용하고 권한을 600으로 변경한다.

$ source ~/keystonerc

$ chmod 600 ~/keystonerc

로그인 할 때 적용되도록 ~/.profile 또는 셸 프로파일 (.bash_profile, .zsh_profile, ...) 파일에 아래와 같이 설정을 추가하도록 한다.

...
# OpenStack rc file
if [ -f ~/keystonerc ]; then
  source ~/keystonerc
fi
...

정상적인 동작을 확인하기 위해 아래와 같이 명령이 실행되는지를 검증한다.

$ openstack user list

Commands

OpenStack Web Console로 대 부분 처리가 가능하지만 Client로 처리를 해야하는 것들도 존재한다. 따라서 Command관련된 내용은 작업을 진행하면서 수시로 갱신될 수 있다.

Network

  • Network 정보 확인

    $ openstack network list

Floating IP

  • Floating IP 검색

    $ openstack floating ip list
  • Floating IP 정보

    $ openstack floating ip show <floating_ip>
  • Floating IP 생성

    $ openstack floating ip create --floating-ip-address <floating-ip> <network pool>
  • Floating IP 삭제

    $ openstack floating ip delete <floating-ip> [<floating-ip> ...]

참고 자료

댓글