becool

20210714 (수) cinder 실습 본문

openstack

20210714 (수) cinder 실습

gusalstm 2021. 7. 14. 11:45
반응형

 

#1 ===========================

1. 볼륨 생성

2. 인스턴스 연결

3. 데이터 저장 (포맷/마운트) : 저장 후 , /var/lib/cindre/volumes  경로에 변화가 있는지 확인

4. 연결 해제 후 확인

 

log : api.log

[root@controller nova(keystone_admin)]# vim /var/log/cinder/api.log

 

[root@controller ~(keystone_admin)]# openstack server start 1vm → 기존 1vm 서버 구동

[root@controller ~(keystone_admin)]# openstack volume create --size 1 1vol

[root@controller ~(keystone_admin)]# openstack server add volume 1vm 1vol

---- 컨트롤러 노드 세팅 끝 / 콘솔 접속 ----

[root@controller ~]# ssh -i 0713key.pem centos@10.0.2.56
Last login: Tue Jul 13 08:08:01 2021 from 10.0.2.10

[centos@1vm ~]$ lsblk
NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda    253:0    0  10G  0 disk
└─vda1 253:1    0  10G  0 part /
vdb    253:16   0   1G  0 disk

[centos@1vm ~]$ sudo mkfs.xfs /dev/vdb
meta-data=/dev/vdb               isize=512    agcount=4, agsize=65536 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=262144, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

[centos@1vm ~]$ sudo mkdir /mnt/test1
[centos@1vm ~]$ sudo mount -t xfs /dev/vdb /mnt/test1
[centos@1vm ~]$ mount |tail -n 3
mqueue on /dev/mqueue type mqueue (rw,relatime,seclabel)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=188220k,mode=700,uid=1000,gid=1000)
/dev/vdb on /mnt/test1 type xfs (rw,relatime,seclabel,attr2,inode64,noquota)

[centos@1vm test1]$ sudo vi fileA

[centos@1vm test1]$ cat fileA
hello world!
cinder file test!

 

----런타임 마운트 및 파일 생성 확인 완료 ----

[root@controller ~(keystone_admin)]# openstack server remove volume 1vm 1vol
[root@controller ~(keystone_admin)]# openstack server add volume 3vm 1vol

[root@controller ~]# ssh centos@10.0.2.59 -i 0713key.pem

---- 콘솔 접속 후 재확인 ----

[centos@3vm ~]$ lsblk
NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda    253:0    0  10G  0 disk
└─vda1 253:1    0  10G  0 part /
vdb    253:16   0   1G  0 disk

[centos@3vm ~]$ sudo mkdir /mnt/test1
[centos@3vm ~]$ sudo mount -t xfs /dev/vdb /mnt/test1
[centos@3vm ~]$ cd /mnt/test1
[centos@3vm test1]$ ls
fileA
[centos@3vm test1]$ cat fileA
hello world!
cinder file test!

 

→ 다른 인스턴스에 볼륨을 연결해도 쓰던파일이 정상으로 보이는 것을 확인할 수 있다.

 

 

 

#2 ===========================

1. 데이터가 있는 볼륨을 스냅샷 → 볼륨 생성

2. 다른 인스턴스에 연결해서 확인

 

[root@controller ~(keystone_admin)]# openstack server remove volume 3vm 1vol
[root@controller ~(keystone_admin)]# openstack volume snapshot create --volume 1vol 1sn
+-------------+--------------------------------------+
| Field       | Value                                |
+-------------+--------------------------------------+
| created_at  | 2021-07-14T03:25:15.110545           |
| description | None                                 |
| id          | 9167e412-a97a-49a8-962a-48301e41c05a |
| name        | 1sn                                  |
| properties  |                                      |
| size        | 1                                    |
| status      | creating                             |
| updated_at  | None                                 |
| volume_id   | d2594a1e-fa1b-4b21-b21a-fc1212cd8089 |
+-------------+--------------------------------------+

[root@controller ~(keystone_admin)]# openstack volume create --snapshot 1sn 2vol

[root@controller ~(keystone_admin)]# openstack server add volume 1vm 2vol

 

[centos@1vm ~]$ sudo mkdir /mnt/test2
[centos@1vm ~]$ lsblk
NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda    253:0    0  10G  0 disk
└─vda1 253:1    0  10G  0 part /
vdb    253:16   0   1G  0 disk /mnt/test1
vdc    253:32   0   1G  0 disk
[centos@1vm ~]$ sudo xfs_repair -L /dev/vdc →mount: wrong fs type, bad option 에러 마운트가 안되서 실행
[centos@1vm ~]$ sudo xfs_admin -U $(uuidgen) /dev/vdc → mount: wrong fs type, bad option 에러로 실행
[centos@1vm ~]$ sudo mount -t xfs /dev/vdc /mnt/test2
[centos@1vm ~]$ cd /mnt/test2
[centos@1vm test2]$ ls
fileA  fileB
[centos@1vm test2]$ cat fileB 
hey snapshot test  → 새로 생성했던 스냅샷의 fileB가 정상적으로 출력됨을 확인

 

 

#3 ===========================

1.이미지를 이용해서 볼륨 생성

2. 볼륨으로 인스턴스 생성

3. 인스턴스에서 작업

4. 인스턴스 삭제

5. 기존의 볼륨으로 새로운 인스턴스 생성 및 확인

 

[root@controller ~(keystone_admin)]# openstack volume create --image 1mg --size 8 3vol

  →CentOS 이미지 1mg 를 통해 볼륨을 만듬

[root@controller ~(keystone_admin)]# openstack server create --volume 3vol --flavor 1flavor --network 1netnet --key-name 0713key.pem 4vm --wait → 볼륨옵션으로 인스턴스 생성

[root@controller ~(keystone_admin)]# openstack server add floating ip 4vm 10.0.2.51

[root@controller ~(keystone_admin)]# openstack server add security group 4vm 1rule

[root@controller ~]# ssh centos@10.0.2.51 -i 0713key.pem

---------인스턴스 생성 및 콘솔 접속--------

[centos@4vm ~]$ vi testfile
 [New] 1L, 21C written
[centos@4vm ~]$ ls
testfile
[centos@4vm ~]$ cp testfile testfile1
[centos@4vm ~]$ cp testfile testfile2
[centos@4vm ~]$ cp testfile testfile3
[centos@4vm ~]$ ls
testfile  testfile1  testfile2  testfile3

-----콘솔접속하여 작업(파일생성) ------

[root@controller ~(keystone_admin)]# openstack server delete 4vm
[root@controller ~(keystone_admin)]# openstack server create --volume 3vol --flavor 1flavor --network 1netnet --key-name 0713key.pem 4vm --wait

[root@controller ~(keystone_admin)]# openstack server add floating ip 4vm 10.0.2.51

[root@controller ~]# ssh-keygen -R 10.0.2.51 → 이미 접속했었던 아이피의 기존 key값을 삭제해야함.
# Host 10.0.2.51 found: line 11
/root/.ssh/known_hosts updated.
Original contents retained as /root/.ssh/known_hosts.old
[root@controller ~]# ssh centos@10.0.2.51 -i 0713key.pem

---------인스턴스 재생성 및 콘솔 접속--------

[centos@4vm ~]$ ls
testfile  testfile1  testfile2  testfile3
[centos@4vm ~]$ cat testfile
volume instance test   → 볼륨이미지로 인스턴스를 만들면 기존에 작업하던 파일들의 내용이 남겨져 있다.

 

 

#4 ===========================

1. 프로젝트 및 사용자 생성

2. admin 사용자가 만들어둔 볼륨 중 하나를 전달 (transfer request)

3. 새로운 사용자로 확인

   (인스턴스에 연결하여)  다른 프로젝트에서 해당 볼륨이 확인 되는지/사용되는지

 

→ 볼륨을 주게 되면 기존 admin에서는 사용이 안된다.

[root@controller ~(keystone_admin)]# openstack volume create --image 2mg -size 2 --project admin 4vol

[root@controller ~(keystone_admin)]# openstack volume transfer request create 4vol
+------------+--------------------------------------+
| Field      | Value                                |
+------------+--------------------------------------+
| auth_key   | ec791ea3d9e81979                     |
| created_at | 2021-07-14T05:18:26.479597           |
| id         | 3e2ec65e-7762-4e3a-be2e-a524122e6f7d |
| name       | None                                 |
| volume_id  | bd5d6daa-b8ec-4b5b-a1ad-ec0358b95dc0 |
+------------+--------------------------------------+

[root@controller ~(keystone_admin)]# openstack user create --project --password-prompt 1p 1us

[root@controller ~(keystone_admin)]# source 1usrc

[root@controller ~(1us)]# openstack volume transfer request accept

 

728x90

'openstack' 카테고리의 다른 글

20210719 (월)  (0) 2021.07.19
20210716(금) 네트워크 실습  (0) 2021.07.16
20210713 (화) ovs 브릿지  (0) 2021.07.13
20210713 (화) 리눅스 브릿지  (0) 2021.07.13
20210712 (월) 서비스 개념 설명  (0) 2021.07.12
Comments