CentOS 7.x Openstack Swift 설치하기



yum -y install gcc python-devel python-setuptools python-pip

pip install --upgrade setuptools pip

pip install python-swiftclient python-keystoneclient


위의 세줄이면 설치가 완료된다.


CentOS 6.x 버전 보다는 설치가 쉽다.


[root@conoha ~]# swift stat

Auth version 1.0 requires ST_AUTH, ST_USER, and ST_KEY environment variables

to be set or overridden with -A, -U, or -K.


Auth version 2.0 requires OS_AUTH_URL, OS_USERNAME, OS_PASSWORD, and

OS_TENANT_NAME OS_TENANT_ID to be set or overridden with --os-auth-url,

--os-username, --os-password, --os-tenant-name or os-tenant-id. Note:

adding "-V 2" is necessary for this.


인증 서버가 v1.0 이면 필요한 정보가


ST_AUTH, ST_USER, ST_KEY


인증 서버가 v2.0 이면 필요한 정보는


OS_AUTH_URL, OS_USERNAME, OS_PASSWORD, OS_TENANT_NAME 또는 OS_TENANT_ID


~/.bash_profile 에 위 정보를 export 하면 사용이 간단해진다.


export OS_AUTH_URL=

export OS_USERNAME=

export OS_PASSWORD=

export OS_TENANT_ID=


CentOS 6.x 버전 Swift 설치는 여기를 https://itrooms.blogspot.com/2016/05/centos-6x-openstack-swift-install.html 참고하자.



블로그 이미지

영은파더♥

가상서버호스팅 VPS 리눅스 서버관리 윈도우 IT

,

우비에서 코노하로 네임서버 변경



우비(woobi.co.kr) 에서도 도메인 레코드 관리가 다 된다.


ConoHa 에서 도메인 관리 기능이 있길래 잘 되는지 확인을 해보려고 네임서버를 변경해 보았다.


우선 코노하 쪽에서 먼저 도메인 레코드를 미리 작업을 해놓고 진행하여야 한다.


그래야 네임서버 주소를 변경시 바로 적용이 가능하기 때문이다.


ConoHa 도메인 관리ConoHa 도메인 관리


좌측의 DNS 아이콘을 누르면 도메인를 추가 후 관리가 가능하다.


맨 하단의 세줄은 도메인 추가시 자동으로 등록된 레코드이고 나머지는 직접 추가한 레코드이다.


코노하 쪽에 도메인 레코드를 추가한 후에 우비쪽에서 네임서버를 코노하로 변경하면 된다.


우비(woobi.co.kr) 네임서버 조회 및 변경우비(woobi.co.kr) 네임서버 조회 및 변경

변경 버튼을 눌러서 진행하면 된다.



우비(woobi.co.kr) 네임서버 조회 및 변경우비(woobi.co.kr) 네임서버 조회 및 변경

위의 1,2,3차 네임서버 주소를 코노하 네임서버 주소로 변경해보자.



우비(woobi.co.kr) 네임서버 조회 및 변경우비(woobi.co.kr) 네임서버 조회 및 변경

코노하 ns-a1.conoha.io 네임서버 주소를 입력하고 변경 버튼을 누르면 된다.


ns-a1.conoha.io 157.7.225.68

ns-a2.conoha.io 163.44.97.4

ns-a3.conoha.io 103.234.169.68


1차만 적어도 된다. 그리고 IP 주소는 반드시 입력을 하여야 변경이 된다.


변경을 하고 확인을 해보니 1분도 안되서 바로 네임서버 변경이 적용되었다.


TTL 이 짧아서 그런지 정말 빠르게 적용이 되었다.



다시 원위치 하려면


ns1.woobi.co.kr 182.162.94.5

ns2.woobi.co.kr 182.162.95.5

ns3.woobi.co.kr 14.63.162.246


블로그 이미지

영은파더♥

가상서버호스팅 VPS 리눅스 서버관리 윈도우 IT

,

CentOS 7.x VPS reboot 이후 부팅 안됨




코노하에서 VPS 운영 중인데 벌써 두번째다.


sync 한 다음에 reboot 명령으로 재부팅 했는데


inter_rapl: no valid rapl domains found in package 0

Give root password for maintenance

(or type Control-D to continue):


메시지가 뜬다.


복구 모드도 먹지 않는다. rw init=/bin/bash


shutdown -r now 로 해야 괜찮았을래나?


서버를 다시 설치해야 될려나~~


이유가 뭔지 아시는 분?


===> solved


root 비밀번호 초기화 방법에 문제가 있었던 것 같다.


rw init=/bin/bash 를 rw init=/sysroot/bin/sh 로 부팅해서


chroot /sysroot

passwd root

touch /.autorelabel

exit


재부팅 하면 된다.



블로그 이미지

영은파더♥

가상서버호스팅 VPS 리눅스 서버관리 윈도우 IT

,

CentOS 7.x VSFTPD 설치 및 설정방법



# yum -y install vsftpd


/etc/vsftpd/vsftpd.conf 파일 수정


anonymous_enable=NO

idle_session_timeout=3600

chroot_local_user=NO

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

listen=YES

listen_ipv6=NO

allow_writeable_chroot=YES

use_localtime=YES

anon_max_rate=100000

local_max_rate=500000

trans_chunk_size=0

force_dot_files=YES

max_clients=10

max_per_ip=2


anonymous_enable=NO    ( anonymous 접속 막기 )

idle_session_timeout=3600    ( 접속 후 동작이 없을 때 자동으로 접속을 끊어준다. 디폴트값인 600은 10분인데 너무 짧다. )

chroot_local_user=NO    ( 상위폴더 접근막기 )

chroot_list_enable=YES    ( 상위폴더 접근막기 )

chroot_list_file=/etc/vsftpd/chroot_list    ( 위 옵션의 유저 리스트 파일 )

유저 추가를 안해주면 500 OOPS: could not read chroot() list file:/etc/vsftpd/chroot_list 에러가 발생한다.

listen=YES    ( ip v4 )

listen_ipv6=NO

allow_writeable_chroot=YES    ( chroot_local_user 옵션 사용시 이 부분을 추가해주어야 한다. )

추가를 안해주면 500 OOPS: chroot 에러가 발생한다.

use_localtime=YES    ( 파일 시간을 서버 시간으로 표시해준다. )

anon_max_rate=100000    ( anonymous 전송속도 제어 100000 = 100KB/s )

local_max_rate=500000    ( local 유저 전송속도 제어 500000 = 500KB/s )

trans_chunk_size=0    ( chuck 사이즈 판단을 vsftp 가 하게 하려면 0 )

force_dot_files=YES    ( . 으로 시작하는 파일을 보여준다. )

max_clients=10    ( 최대 접속수 )

max_per_ip=2    ( 같은 IP 최대 접속수 )


[root@virtualbox ~]# getsebool -a | grep ^ftp_home_dir

ftp_home_dir --> off

[root@virtualbox ~]# setsebool -P ftp_home_dir on


상위폴더 접근막기를 하면 유저의 홈디렉토리가 안보이는데 ftp_home_dir 을 on 해주면 보인다.


테스트 유저를 생성해서 chroot_list 파일에 추가해보자.


[root@virtualbox ~]# useradd ftptester

[root@virtualbox ~]# passwd ftptester

ftptester 사용자의 비밀 번호 변경 중

새  암호:

새  암호 재입력:

passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.

[root@virtualbox ~]# echo "ftptester" >> /etc/vsftpd/chroot_list

[root@virtualbox ~]# chmod 600 /etc/vsftpd/chroot_list


ftp service 를 방화벽에 추가해주자.


[root@virtualbox ~]# firewall-cmd --permanent --add-service=ftp

success

[root@virtualbox ~]# firewall-cmd --reload

success


vsftpd 데몬 시작 및 재부팅시에도 자동으로 시작되도록 하자.


[root@virtualbox ~]# systemctl start vsftpd

[root@virtualbox ~]# systemctl enable vsftpd

Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.


이제 ftp로 접속 테스트를 해보면 된다.


블로그 이미지

영은파더♥

가상서버호스팅 VPS 리눅스 서버관리 윈도우 IT

,

CentOS 7.x vsftpd 자신의 홈디렉토리 상위폴더 접근막기



vsftpd 기본 설정에서는 자신의 홈디렉토리 이외에도 root 디렉토리까지 상위 폴더로 접근이 가능합니다.


상위 디렉토리 이동을 막는 설정 방법입니다.


/etc/vsftpd/vsftpd.conf 파일에서


chroot_local_user=NO

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

allow_writeable_chroot=YES

allow_writeable_chroot=YES 이 줄이 없으면 "500 OOPS: chroot" 에러가 발생합니다.


저장하고


/etc/vsftpd/chroot_list 에 ftp 접속계정 유저들을 추가


그리고 selinux 설정이 되어있다면 아래 처럼 해주세요.


[root@virtualbox ~]# getsebool -a | grep ^ftp_home_dir

ftp_home_dir --> off

[root@virtualbox ~]# setsebool -P ftp_home_dir on


이 부분은 SE LINUX 때문에 해주어야 합니다.


# systemctl restart vsftpd


블로그 이미지

영은파더♥

가상서버호스팅 VPS 리눅스 서버관리 윈도우 IT

,

ConoHa Object Storage 다운로드 속도 테스트



코노하 오브젝트 스토리지 속도가 궁금해서 한번 테스트 해보았습니다.


[root@conoha ~]# dd if=/dev/zero of=1GB.bin bs=100M count=10

10+0 records in

10+0 records out

1048576000 bytes (1.0 GB) copied, 1.26018 s, 832 MB/s

[root@conoha ~]# swift post conoha

[root@conoha ~]# swift upload conoha 1GB.bin

1GB.bin

[root@conoha ~]# rm 1GB.bin

rm: remove 일반 파일 `1GB.bin'? y

[root@conoha ~]# swift download conoha 1GB.bin

1GB.bin [auth 0.413s, headers 0.551s, total 84.430s, 12.481 MB/s]



1기가 파일을 하나 만들어서 업로드 한 후에 다시 다운로드 받아보았는데


속도가 12.481 x 8 = 99.848 Mbps 가 나오네요.


100Mbps 네트워크 대역폭 풀로 속도가 나옵니다.



이번에는 VirtualBox 에서 구축한 VPS 에서 다운로드 해보겠습니다.


[root@virtualbox ~]# swift download conoha 1GB.bin

1GB.bin [auth 11.211s, headers 21.616s, total 146.322s, 7.761 MB/s]



7.761 x 8 = 62.088 Mbps 속도가 나오네요~


코노하 서버가 도쿄에 있는데 이 정도면 아주 빠른 것 같습니다.


블로그 이미지

영은파더♥

가상서버호스팅 VPS 리눅스 서버관리 윈도우 IT

,

Openstack Swift 사용 방법



swift 로 컨테이너(container) 생성, 파일 업로드, 다운로드, 파일삭제 하는 방법에 대해서 알아보자.


▶ container 만들기 (디렉토리 개념)


[root@virtualbox ~]# swift post testdir

[root@virtualbox ~]# swift list

testdir



▶ container 삭제


[root@virtualbox ~]# swift delete testdir

testdir

[root@virtualbox ~]# swift list

[root@virtualbox ~]#



▶ 파일 업로드


[root@virtualbox ~]# swift upload testdir ./100MB.bin

100MB.bin

[root@virtualbox ~]# swift list testdir

100MB.bin



▶ 파일 다운로드


[root@virtualbox ~]# swift download testdir 100MB.bin

100MB.bin [auth 10.922s, headers 16.455s, total 62.262s, 2.042 MB/s]



container1 에 디렉토리 전체 업로드 하기


[root@virtualbox ~]# mkdir test_dir

[root@virtualbox ~]# swift post container1

[root@virtualbox ~]# dd if=/dev/zero of=./test_dir/1MB.bin bs=1M count=1

1+0 records in

1+0 records out

1048576 bytes (1.0 MB) copied, 0.00143009 s, 733 MB/s

[root@virtualbox ~]# dd if=/dev/zero of=./test_dir/2MB.bin bs=1M count=2

2+0 records in

2+0 records out

2097152 bytes (2.1 MB) copied, 0.00208392 s, 1.0 GB/s

[root@virtualbox ~]# dd if=/dev/zero of=./test_dir/3MB.bin bs=1M count=3

3+0 records in

3+0 records out

3145728 bytes (3.1 MB) copied, 0.00284061 s, 1.1 GB/s

[root@virtualbox ~]# swift upload container1 test_dir

test_dir/1MB.bin

test_dir/3MB.bin

test_dir/2MB.bin

[root@virtualbox ~]# swift download container1 test_dir/1MB.bin -o 1mb.bin

test_dir/1MB.bin [auth 5.741s, headers 6.140s, total 7.448s, 0.614 MB/s]

[root@virtualbox ~]# ll

합계 111408

-rw-r--r--. 1 root root 104857600  5월 12 15:39 100MB.bin

-rw-r--r--. 1 root root   1048576  5월 12 16:39 1mb.bin

drwxr-xr-x. 2 root root        48  5월 12 16:40 test_dir


-o 옵션을 주면 다운로드 할 때 이름을 변경해서 저장이 가능하다.


컨테이너 전체 다운로드 하기


[root@conoha ~]# swift download container1

test_dir/3MB.bin [auth 0.361s, headers 0.464s, total 0.512s, 20.908 MB/s]

test_dir/2MB.bin [auth 0.634s, headers 0.739s, total 0.768s, 15.679 MB/s]

test_dir/1MB.bin [auth 0.996s, headers 1.140s, total 1.153s, 6.667 MB/s]


컨테이너를 삭제 하면 안에 들어있는 파일도 삭제가 된다.


[root@conoha ~]# swift delete testdir

100MB.bin

testdir

[root@conoha ~]# swift delete container1

test_dir/1MB.bin

test_dir/3MB.bin

test_dir/2MB.bin

container1


swift 클라이언트 설치 방법은 여기를 https://ivps.tistory.com/47 또는 https://ivps.tistory.com/54 참고하자.


CentOS 6.x 버전은 https://itrooms.blogspot.com/2016/05/centos-6x-openstack-swift-install.html 여기를 참고하자.


블로그 이미지

영은파더♥

가상서버호스팅 VPS 리눅스 서버관리 윈도우 IT

,

ConoHa VPS Object Storage 사용방법 2/2



▶ Openstack Swift 설치


yum -y install gcc python-devel python-setuptools python-pip

pip install --upgrade setuptools pip

pip install python-swiftclient python-keystoneclient



▶ 코노하 오브젝트 스토리지 정보 입력


[root@conoha ~]# swift stat

Auth version 1.0 requires ST_AUTH, ST_USER, and ST_KEY environment variables

to be set or overridden with -A, -U, or -K.


Auth version 2.0 requires OS_AUTH_URL, OS_USERNAME, OS_PASSWORD, and

OS_TENANT_NAME OS_TENANT_ID to be set or overridden with --os-auth-url,

--os-username, --os-password, --os-tenant-name or os-tenant-id. Note:

adding "-V 2" is necessary for this.


Auth 1.0 버전에서는 필요로 하는 정보가 ST_AUTH, ST_USER, ST_KEY 이며,

Auth 2.0 버전에서는 OS_AUTH_URL, OS_TENANT_NAME or OS_TENANT_ID, OS_USERNAME, OS_PASSWORD 이다.

코노하는 인증이 2.0 버전이므로 아래 처럼 정의하면 된다.


export OS_AUTH_URL=https://identity.tyo1.conoha.io/v2.0

export OS_TENANT_NAME=테넌트명

export OS_USERNAME=API유저아이디

export OS_PASSWORD=비밀번호


명령어를 실행해도 되고


# vi ~/.bash_profile 파일에 위의 내용을 추가 하여 저장한 뒤에 재로그인 하여도 된다.


모든게 완료되었다면 확인을 해보자.


[root@conoha ~]# swift stat

         Account: nc_3c74294caf774974abf9a089b517d100

      Containers: 0

         Objects: 0

           Bytes: 0

Meta Quota-Bytes: 107374182400

     X-Timestamp: 1459475021.06595

      X-Trans-Id: tx39d51395db12471489ea2-0518341fbd

    Content-Type: text/plain; charset=utf-8

   Accept-Ranges: bytes



코노하 오브젝트 스토리지 용량 추가 방법은 여기를 https://ivps.tistory.com/46 참고하자.


그리고 swift 사용 방법은 여기를 https://ivps.tistory.com/48 참고하자.


위의 설치는 CentOS 7.x 환경에서 테스트 되었다.


6.x 버전에서는 아마 에러가 날 것이다. 해결 방법은 여기를 https://itrooms.blogspot.com/2016/05/centos-6x-openstack-swift-install.html 참고하자.


블로그 이미지

영은파더♥

가상서버호스팅 VPS 리눅스 서버관리 윈도우 IT

,

ConoHa VPS Object Storage 사용방법 1/2



오브젝트 스토리지는 블록 스토리지에 비교해 사용방법은 조금 번거로우나 가격이 일단 저렴하므로 데이터 백업용으로 사용하기에 안성맞춤인 듯 하다.


코노하에서 오브젝트 스토리지를 사용하기 위해서는 먼저 용량을 추가 해야한다.


ConoHa 오브젝트 스토리지 설정ConoHa 오브젝트 스토리지 설정

위 화면에서 우측 도구 모양을 눌러서 용량을 추가하면 된다.


ConoHa 오브젝트 스토리지 용량 변경ConoHa 오브젝트 스토리지 용량 변경


일단 100GB로 선택하고 예를 클릭


나중에 해지하고 싶으면 0GB 를 선택하면 된다.


단, 저장된 데이터는 미리 지워야 한다.


ConoHa 오브젝트 스토리지 용량 변경ConoHa 오브젝트 스토리지 용량 변경


100GB 로 변경되었다.


용량 추가를 했다면 이번에는 사용 방법을 알아보자.


코노하 API 정보코노하 API 정보


위 화면에서 Openstack Swift 에서 필요한 정보는


테넌트명, Identity Service, 유저명, 비밀번호 이렇게 4가지가 필요하다.


API 유저가 없다면 생성하면 된다.



Openstack Swift 설치 및 사용 방법은 다음 글에서 계속 된다.


https://ivps.tistory.com/47



블로그 이미지

영은파더♥

가상서버호스팅 VPS 리눅스 서버관리 윈도우 IT

,

CentOS 7.x MySQL innoDB Disable 하는 방법



CentOS 7.x 부터는 MySQL 이 MariaDB 5.5 버전 이상이다.


▶ 5.5 버전부터 innodb 를 사용안함으로 설정하는 방법


# vi /etc/my.cnf

[mysqld]

skip-innodb

default-storage-engine=MyISAM


# systemctl restart mariadb.service



▶ 5.5 미만 innodb 를 사용안함으로 설정하는 방법


# vi /etc/my.cnf

[mysqld]

skip-innodb


# service mysql restart



블로그 이미지

영은파더♥

가상서버호스팅 VPS 리눅스 서버관리 윈도우 IT

,