0506

망지·2022년 5월 6일
1
post-custom-banner

가상의 랜카드가 만들어지면 실제랜카드로부터 ip를 뺏어서 가짐. 실제 랜카드는 전기적 신호만 전달. 이것이 가상 랜카드 특징.=>ens160은 ip를 갖지 않고 br-ex가 갖고 있음.

실제 랜카드가 ip를 받으면 내부의 랜카드가 받을 수 없음.
192.168.0.44 -> 관리용 IP


노란색 - launch
파란색 - start

런치는 인스턴트를 만드는 버튼, start가 시작버튼.



1:1맵핑.
포워드 된다. 외부 IP가 내부 (10.0.14.235) 로 연결. NAT, Router...
192.168.4.172가 지금은 사설IP이지만 실무에서는 공인 IP일 것.

openstack - 컨테이너 생성 및 활용 ; Swift







[centos@web01centos7 ~]$ wget http://192.168.0.44:8080/v1/AUTH_8edef122f2424d619f3723e6ede419c8/mz14/wordpress-5.9.3-ko_KR.zip
--2022-05-06 02:03:04--  http://192.168.0.44:8080/v1/AUTH_8edef122f2424d619f3723e6ede419c8/mz14/wordpress-5.9.3-ko_KR.zip
Connecting to 192.168.0.44:8080... connected.
HTTP request sent, awaiting response... 200 OK
Length: 21097340 (20M) [application/zip]
Saving to: ‘wordpress-5.9.3-ko_KR.zip’

100%[=====================================================================================================>] 21,097,340  20.1MB/s   in 1.0s

swift 정적 웹사이트 호스팅

openstack - 우분투18 설치




프로젝트 -인스턴스 - 인스턴스 시작




=> web02 라는 웹서버 역할 할거기 때문에 터미널에 들어가서 설치 할 것들을 명령어 통해서 우분투 설치할 때 구성에 넣어서 설치.





[root@localhost ~]# cd /var/named/db
[root@localhost db]# ls
mz11.shop.db  mz14.shop.db  mz17.shop.db  mz20.shop.db  mz23.shop.db  mz26.shop.db  mz28.shop.db.bak  mz31.shop.db
mz12.shop.db  mz15.shop.db  mz18.shop.db  mz21.shop.db  mz24.shop.db  mz27.shop.db  mz29.shop.db      mz32.shop.db
mz13.shop.db  mz16.shop.db  mz19.shop.db  mz22.shop.db  mz25.shop.db  mz28.shop.db  mz30.shop.db      mz33.shop.db
[root@localhost db]# vi mz14.shop.db

$TTL    86400
@       IN      SOA     mz14.shop.   root.mz14.shop.(
                        2022050301 ; Serial
                        3h         ; Refresh
                        1h         ; Retry
                        1w         ; Expire
                        1h )       ; Minimum

        IN      NS      ns.mz14.shop.
ns      IN      A       192.168.0.66
open    IN      A       192.168.0.44
web01   IN      A       192.168.4.172
web02   IN      A       192.168.4.175




키로 접속 가능

openstack - web01서버에 httpd, wordpress 설치

[centos@web01centos7 ~]$ sudo yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
=>저장소 파일 내려받음

[centos@web01centos7 ~]$ sudo yum -y install epel-release yum-utils
=> epel-release;저장소 파일 실행할 수 있도록 설치 , yum-utils ; yum config-manager사용할 수 있도록 설치

[centos@web01centos7 ~]$ sudo yum-config-manager --enable remi-php74
[centos@web01centos7 ~]$ sudo yum install -y httpd php php-mysql php-gd php-mbstring wget unzip

[centos@web01centos7 ~]$ wget http://192.168.0.44:8080/v1/AUTH_8edef122f2424d619f3723e6ede419c8/mz14/wordpress-5.9.3-ko_KR.zip
--2022-05-06 02:03:04--  http://192.168.0.44:8080/v1/AUTH_8edef122f2424d619f3723e6ede419c8/mz14/wordpress-5.9.3-ko_KR.zip
Connecting to 192.168.0.44:8080... connected.
HTTP request sent, awaiting response... 200 OK
Length: 21097340 (20M) [application/zip]
Saving to: ‘wordpress-5.9.3-ko_KR.zip’

100%[=====================================================================================================>] 21,097,340  20.1MB/s   in 1.0s
[centos@web01centos7 ~]$ cd /var/www/html
[centos@web01centos7 html]$ sudo unzip ~/wordpress-5.9.3-ko_KR.zip
[centos@web01centos7 html]$ sudo mv wordpress/* .
[centos@web01centos7 html]$ sudo chown -R apache:apache /var/www/*
[centos@web01centos7 html]$ sudo systemctl restart httpd

openstack - 디스크 공간 부족 가정하고 볼륨 생성해보기.

1. openstack 프로젝트 - 볼륨 -볼륨 에서 attach

2. 프롬프트에서 mount

[centos@web01centos7 ~]$ sudo 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@web01centos7 ~]$ df -h
[centos@web01centos7 ~]$ sudo mkfs -t ext4 /dev/vdb
[centos@web01centos7 ~]$ sudo mount /dev/vdb /mnt/

[centos@web01centos7 ~]$ df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        472M     0  472M   0% /dev
tmpfs           496M     0  496M   0% /dev/shm
tmpfs           496M   13M  483M   3% /run
tmpfs           496M     0  496M   0% /sys/fs/cgroup
/dev/vda1        10G  1.2G  8.8G  12% /
tmpfs           100M     0  100M   0% /run/user/1000
/dev/vdb        976M  2.6M  907M   1% /mnt

[centos@web01centos7 ~]$ sudo vi /mnt/test.txt

[centos@web01centos7 ~]$ sudo vi /mnt/test.txt
[centos@web01centos7 ~]$ ls
wordpress-5.9.3-ko_KR.zip
[centos@web01centos7 ~]$ sudo cp wordpress-5.9.3-ko_KR.zip /mnt/
[centos@web01centos7 ~]$ cd /mnt
[centos@web01centos7 mnt]$ ls
lost+found  test.txt  wordpress-5.9.3-ko_KR.zip

ext4 ; 이전에 사용했던 xfs 대신 사용.

openstack - web01에 마운트 해둔 볼륨 마운트 해제 한 후 web02에 붙이기

순서 )
mount해제 후 openstack접속해서 detach 하고 web02 attach하고 web02 마운트.

1. web01에서 umount

[centos@web01centos7 mnt]$ cd ~
[centos@web01centos7 ~]$ pwd
/home/centos
[centos@web01centos7 ~]$ sudo umount /mnt

2. openstack에서 볼륨 해제

3. web02에서 마운트

ubuntu@web02ubuntu18:~$ lsblk
NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
vda     252:0    0   10G  0 disk
├─vda1  252:1    0  9.9G  0 part /
├─vda14 252:14   0    4M  0 part
└─vda15 252:15   0  106M  0 part /boot/efi
vdb     252:16   0    1G  0 disk

ubuntu@web02ubuntu18:~$ sudo mount /dev/vdb /mnt
ubuntu@web02ubuntu18:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            481M     0  481M   0% /dev
tmpfs            99M  648K   98M   1% /run
/dev/vda1       9.6G  1.3G  8.3G  14% /
tmpfs           493M     0  493M   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           493M     0  493M   0% /sys/fs/cgroup
/dev/vda15      105M  4.4M  100M   5% /boot/efi
tmpfs            99M     0   99M   0% /run/user/1000
/dev/vdb        976M   23M  887M   3% /mnt

ubuntu@web02ubuntu18:~$ ls /mnt/
lost+found  test.txt  wordpress-5.9.3-ko_KR.zip

mkfs하면 web01에서 넣어두었던 파일 날라가므로 하지 않음.

openstack - web02서버에 wordpress 설치

ubuntu@web02ubuntu18:~$ sudo apt install -y nginx php7.2-fpm php7.2 php7.2-mysql php7.2-mbstring php7.2-gd wget unzip

ubuntu@web02ubuntu18:~$ sudo mkdir -p /var/www/html/wordpress/public_html

ubuntu@web02ubuntu18:~$ cd /etc/nginx/sites-available
ubuntu@web02ubuntu18:/etc/nginx/sites-available$ sudo vi wordpress.conf
server {
            listen 80;
            root /var/www/html/wordpress/public_html;
            index index.php index.html;
            server_name www.mz14.shop;

	    access_log /var/log/nginx/SUBDOMAIN.access.log;
    	    error_log /var/log/nginx/SUBDOMAIN.error.log;

            location / {
                         try_files $uri $uri/ =404;
            }

            location ~ \.php$ {
                         include snippets/fastcgi-php.conf;
                         fastcgi_pass unix:/run/php/php7.2-fpm.sock;
            }
            
            location ~ /\.ht {
                         deny all;
            }

            location = /favicon.ico {
                         log_not_found off;
                         access_log off;
            }

            location = /robots.txt {
                         allow all;
                         log_not_found off;
                         access_log off;
           }
       
            location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
                         expires max;
                         log_not_found off;
           }
}

ubuntu@web02ubuntu18:/etc/nginx/sites-available$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
ubuntu@web02ubuntu18:/etc/nginx/sites-available$ cd /etc/nginx/sites-enabled/

ubuntu@web02ubuntu18:/etc/nginx/sites-enabled$ sudo ln -s ../sites-available/wordpress.conf .
ubuntu@web02ubuntu18:/etc/nginx/sites-enabled$ sudo systemctl reload nginx
ubuntu@web02ubuntu18:/etc/nginx/sites-enabled$ cd /var/www/html/wordpress/public_html

ubuntu@web02ubuntu18:/var/www/html/wordpress/public_html$ sudo unzip /mnt/wordpress-5.9.3-ko_KR.zip

ubuntu@web02ubuntu18:/var/www/html/wordpress/public_html$ sudo mv wordpress/* .

ubuntu@web02ubuntu18:/var/www/html/wordpress/public_html$ sudo chown -R www-data:www-data *

ubuntu@web02ubuntu18:/var/www/html/wordpress/public_html$ sudo chmod -R 755 *


openstack - 볼륨 확장 (scale up;자원의 크기를 수직으로 늘려주는 것)


=> 5gb 확장.

리눅스 볼륨 규칙 : 늘어난 볼륨을 줄일 수는 없다. (주의 요함)

openstack - db서버 보안그룹

openstack - HAProxy 서버(용량문제로 제거) => 웹02를 db서버로 대체.






===>용량문제로 제거

openstack - flavor추가생성

웹02 보안그룹 db로 바꿔주었음.

openstack - 프로젝트 생성 및 유저추가


openstack - 네트워크 생성


openstack - 라우터 생성 및 설정

external IP확인 및 ping 보내보기

openstack - IP할당


openstack - 보안그룹 설정

openstack - 키 생성

openstack - 이미지 공용으로 바꾸기


다른 프로젝트 유저에게도 보임.

openstack - 인스턴스 생성(web)







openstack - 인스턴스 생성(db)

openstack - 유동IP연결

openstack - DB 보안그룹 생성

openstack - DB 보안그룹 편집

웹서버 IP 도메인 서버에 추가해주기

[root@localhost ~]# cd /var/named/db
[root@localhost db]# ls
mz11.shop.db  mz14.shop.db  mz17.shop.db  mz20.shop.db  mz23.shop.db  mz26.shop.db  mz28.shop.db.bak  mz31.shop.db
mz12.shop.db  mz15.shop.db  mz18.shop.db  mz21.shop.db  mz24.shop.db  mz27.shop.db  mz29.shop.db      mz32.shop.db
mz13.shop.db  mz16.shop.db  mz19.shop.db  mz22.shop.db  mz25.shop.db  mz28.shop.db  mz30.shop.db      mz33.shop.db
[root@localhost db]# vi mz14.shop.db


$TTL    86400
@       IN      SOA     mz14.shop.   root.mz14.shop.(
                        2022050301 ; Serial
                        3h         ; Refresh
                        1h         ; Retry
                        1w         ; Expire
                        1h )       ; Minimum

        IN      NS      ns.mz14.shop.
ns      IN      A       192.168.0.66
blog    IN      A       #할당받은 IP
profile
꾸준히, 차근차근
post-custom-banner

3개의 댓글

comment-user-thumbnail
2022년 5월 6일

알.마인.드 잘 하고 싶다면 모두 모여 🔥🔥
핫한 오.픈스택까지 구비 완.료 💦💦
>> https://velog.io/@w0nyyy

2개의 답글