16
㈜유미테크 OpenStack 인스턴스 Resize

Openstack Instance Resize

  • Upload
    ymtech

  • View
    394

  • Download
    0

Embed Size (px)

DESCRIPTION

Openstack Instance Resize 설정

Citation preview

Page 1: Openstack Instance Resize

㈜유미테크

OpenStack 인스턴스 Resize

Page 2: Openstack Instance Resize

목차

• SSH Key 설정

• Horizon을 통한 인스턴스 Resize

• CLI 환경에서 커맨드를 통한 인스턴스 Resize

2

Page 3: Openstack Instance Resize

SSH Key 설정

• OpenStack에서 생성된 인스턴스의 자원크기를 변경할때, 다음과 같은 요구사항이 있다.

– 다른 compute node에 SSH로 인증없이 로그인 가능 (public key authentication)

– 사용가능한 shell(/bin/bash) 지정: ubuntu 패키지는 /bin/false로 설정하고 있음.

– known_hosts에 대상 compute 호스트 등록

• 위의 요구사항에 만족하는지 확인하기 위해 SSH로 다른 compute node에 접속해본다.

– 위와 같이 password를 묻는 화면이 뜬다면, SSH Key설정을 해야한다.

3

~$ ssh 100.100.100.113

stack@compute3 password : _

Page 4: Openstack Instance Resize

SSH Key 설정 (계속)

• Controller node에서 SSH key를 생성한다.

• 생성된 key의 권한을 설정한다.

– authorized_keys와 known_hosts은 없을수도 있다.

4

~$ ssh-keygen -t rsa

Generating public/private rsa key pair.

Enter file in which to save the key (/home/stack/.ssh/id_rsa) : <Enter>

Enter passphrase (empty for no passphrase) : <Enter>

Enter same passphrase again : <Enter>

Your identification has been saved in /home/stack/.ssh/id_rsa.

Your public key has been saved in /home/stack/.ssh/id_rsa.pub.

The key fingerprint is:

0b:fa:3c:b8:73:71:bf:58:57:eb:2a:2b:8c:2f:4e:37 stack@contoller

~$ chmod 700 ~/.ssh

~$ chmod 600 ~/.ssh/id_rsa

~$ chmod 644 ~/.ssh/id_rsa.pub

~$ chmod 644 ~/.ssh/authorized_keys

~$ chmod 644 ~/.ssh/known_hosts

Page 5: Openstack Instance Resize

SSH Key 설정 (계속)

• 생성된 key를 각 Compute node별로 전송한다.

– 위의 과정을 Compute node 별로 반복한다.

• 각 Compute node에서 public key를 ‘authorized_keys’로 설정하고, private key를 .ssh로 복사한다.

– 위의 과정을 Compute node 별로 반복한다.

5

~$ scp $HOME/.ssh/id_rsa [email protected]:id_rsa

id_rsa 100% 395 0.4KB/s 00:00

~$ scp $HOME/.ssh/id_rsa.pub [email protected]:id_rsa.pub

id_rsa.pub 100% 395 0.4KB/s 00:00

┗ 전송하려는 compute node의 IP

┗ 전송하려는 compute node의 IP

~$ cat $HOME/id_rsa.pub >> $HOME/.ssh/authorized_keys

~$ cp $HOME/id_rsa $HOME/.ssh/id_rsa

Page 6: Openstack Instance Resize

SSH Key 설정 (계속)

• SSH로 각 Compute node간에 password 없이 접속이 되는지 확인한다.

– 위와 같이 별도의 password를 입력하지 않아도 해당 compute node로 접속이 가능하다면 SSH key설정은 완료되었다.

6

~$ ssh 100.100.100.113

Welcome to Ubuntu 12.04.1 LTS (GNU/Linux 3.2.0-29-generic x86_64)

* Documentation: https://help.ubuntu.com/

568 package can be updated.

233 updates are security updates.

Last login: Thu Jul 31 11:56:43 2014 from compute1

stack@compute3:~$ _

Page 7: Openstack Instance Resize

SSH Key 설정 (계속)

• OpenStack에서도 SSH key를 이용하여 migration이 가능하도록 설정한다.

– 위의 과정을 각 Compute node별로 반복한다.

7

~$ mkdir -p /opt/stack/data/nova/.ssh

~$ cp $HOME/id_rsa /opt/stack/data/nova/.ssh/id_rsa

~$ cat $HOME/id_rsa.pub /opt/stack/data/nova/.ssh/authorized_keys

~$ echo ‘StrictHostKeyChecking no’ >> /opt/stack/data/nova/.ssh/config

Page 8: Openstack Instance Resize

Horizon을 통한 인스턴스 Resize

• resize할 인스턴스에서 ‘more->인스턴스 크기 변경(Resize Instance)’를 선택한다.

8

Page 9: Openstack Instance Resize

Horizon을 통한 인스턴스 Resize (계속)

• 변경할 flavor을 선택한뒤, ‘크기변경(Resize)’버튼을 누른다.

9

Page 10: Openstack Instance Resize

Horizon을 통한 인스턴스 Resize (계속)

• resize가 진행되면서 해당 인스턴스의 상태가 변하는 것을 확인 할 수 있다.

10

Page 11: Openstack Instance Resize

Horizon을 통한 인스턴스 Resize (계속)

• resize가 진행되면서 migration이 이루어지기 때문에, 하이퍼바이저에서 자원사용량이 변하는 것을 확인할 수 있다.

• migration 되는 하이퍼바이저는 scheduler에 의해 선택된다.

11

Page 12: Openstack Instance Resize

Horizon을 통한 인스턴스 Resize (계속)

• resize가 끝나면, ‘확인(Confirm)’ 또는 ‘되돌리기(Revert)’ 설정을 통해 최종적으로 resize를 마무리한다.

12

Page 13: Openstack Instance Resize

Horizon을 통한 인스턴스 Resize (계속)

• resize후, 인스턴스의 크기가 변경된 것을 확인 할 수 있다.

13

Page 14: Openstack Instance Resize

CLI 환경에서 커맨드를 통한 인스턴스 Resize

• 인스턴스 Resize

– nova resize --poll <server> <flavor>

14

~$ cd ~/devstack

~/devstack$ source openrc admin demo

~/devstack$ nova resize --poll test1_ns test

Server resizing… 0% complete

~$ cd ~/devstack

~/devstack$ source openrc admin demo

~/devstack$ nova resize --poll test1_ns test

Server resizing… 100% complete

Finished

~/devstack$

Page 15: Openstack Instance Resize

CLI 환경에서 커맨드를 통한 인스턴스 Resize (계속)

• nova list로 인스턴스 상태 확인

• Resize된 Flavor로 confirm

– nova resize-confirm <server>

• Resize되기 전의 Flavor로 revert

– nova resize-revert <server>

15

~/devstack$ nova resize-confirm test1_ns

~/devstack$ nova resize-confirm test1_ns

~/devstack$ nova list +--------------------------------------+----------------------+---------------+------------+-------------+------------------+

| ID | Name | Status | Task State | Power State | Networks |

+--------------------------------------+----------------------+---------------+------------+-------------+------------------+

| f8831b48-15cd-4b84-b024-811e08c1968c | cirros_compute1_net1 | SHUTOFF | - | Shutdown | net1=10.10.10.21 |

| f27d52e8-6dd3-4c87-8596-fa877c96d6cb | cirros_compute2_net2 | SHUTOFF | - | Shutdown | net2=11.11.11.21 |

| e21e7542-db00-4205-aa42-d05cbbca35da | cirros_compuet3_net3 | SHUTOFF | - | Running | net3=12.12.12.4 |

| 075e796c-17ac-4672-b9c1-82912bf6359b | test1_ns | VERIFY_RESIZE | - | Running | net2=11.11.11.31 |

| 211daa8e-6bc7-48d9-8a79-731a16d63041 | test2_ns | ACTIVE | - | Running | net2=11.11.11.32 |

| 3468d2ff-3975-4199-be11-4b54291e3595 | test3_ns | ACTIVE | - | Running | net2=11.11.11.33 |

| e7e4cad3-226b-48ff-9fb3-decdef764af9 | ubuntu_compute1_net1 | ERROR | - | Shutdown | net1=10.10.10.22 |

+--------------------------------------+----------------------+---------------+------------+-------------+------------------+

Page 16: Openstack Instance Resize

CLI 환경에서 커맨드를 통한 인스턴스 Resize (계속)

• nova show 커맨드를 통한 인스턴스의 flavor 확인

16

~/devstack$ nova show test1_ns

+--------------------------------------+----------------------------------------------------------+

| Property | Value |

+--------------------------------------+----------------------------------------------------------+

| OS-DCF:diskConfig | MANUAL |

| OS-EXT-AZ:availability_zone | nova |

| config_drive | |

| created | 2014-07-31T07:58:47Z |

| flavor | custom (1ba7fe93-4d97-48f3-80dd-f6bf6ea4c15c) |

| hostId | 4561a98e0a99bb43a84b7ea5ebedb27d7d015ff9970f4963cad31592 |

| id | 075e796c-17ac-4672-b9c1-82912bf6359b |

| image | cirros-0.3.2-x86_64-uec |

~/devstack$ nova show test1_ns +--------------------------------------+----------------------------------------------------------+

| Property | Value |

+--------------------------------------+----------------------------------------------------------+

| OS-DCF:diskConfig | MANUAL |

| OS-EXT-AZ:availability_zone | nova |

| config_drive | |

| created | 2014-07-31T07:58:47Z |

| flavor | test(e5deffd1-a64d-4cfe-ae61-cffa914fe43e) |

| hostId | 4561a98e0a99bb43a84b7ea5ebedb27d7d015ff9970f4963cad31592 |

| id | 075e796c-17ac-4672-b9c1-82912bf6359b |

| image | cirros-0.3.2-x86_64-uec |