서브넷마스크
OPENSTACK - 개념적 아키텍처
core 서비스 => 이 다섯가지 중 하나라도 없으면 동작하지 않음.
나머지는 선택적 서비스. swift는 웹셰어 같은 역할인데, 이 또한 중요하긴 함.
=> 살펴볼 예정인 추가적 서비스
OPENSTACK - 서비스관계도
5 core service
1) compute service(CPU,RAM) : Nova | AWS(EC2)
2) storage service(SSD,HDD) : Cinder | AWS(EBS) / Swift | AWS(S3)
3) network service(G/W,S/W) : Neutron | AWS(VPC)
4) image service(OS) : Glance | AWS(AMI)
5) Identity service(AUTH, keypair) : keyStone, AWS(IAM)
6) orchestration service(IaC) : Heat, AWS(CloudFormation)
OPENSTACK - 실습환경 구성도
체크표시 ; 하이퍼바이저 => 중첩된 가상화.
=>실습환경이 아닌 원래대로라면..
OPENSTACK - 실습환경 구축(VMware pro)
cpu 4
SSD 128g
ram 10g
=> 중첩된 가상화 시 꼭 체크해야함.
=>network adapter 설정
=>설정완료 후 상태
time&date; 서울
rootpassword
partitioning; /home 삭제하고 /폴더에 몰아주기
network; on
sofrwareselection; minimal install
OPENSTACK IP : 192.168.0.44 /20
OPENSTACK - CentOS8에 구축하기
1.Openstack 싱글 노드 설치(실습용 - 실무에서는 절대 싱글노드를 사용하지 않음.)
# hostnamectl set-hostname openstack
[root@openstack ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens160
_ggdG_
TYPE=Ethernet
BOOTPROTO=none
NAME=ens160
DEVICE=ens160
ONBOOT=yes
IPADDR=192.168.0.44
NETMASK=255.255.240.0
GATEWAY=192.168.0.1
DNS1=8.8.8.8
DNS2=8.8.4.4
[root@openstack ~]# vi /etc/selinux/config
SELINUX=disabled
[root@openstack ~]# dnf install network-scripts -y
_=>yum(CentOS7) 대체 dnf(CentOS8)_
[root@openstack ~]# systemctl disable --now firewalld
_=>방화벽 내림. openstack자체에 있음._
[root@openstack ~]# systemctl disable --now NetworkManager
[root@openstack ~]# systemctl enable --now network
[root@openstack ~]# reboot
[root@openstack ~]# dnf update -y
[root@openstack ~]# dnf config-manager --enable powertools
_=>powertools를 사용해야 openstack 설치 가능._
[root@openstack ~]# dnf install -y centos-release-openstack-yoga
[root@openstack ~]# dnf update -y
[root@openstack ~]# dnf install -y openstack-packstack
[root@openstack ~]# packstack --gen-answer-file /root/answers.txt
Packstack changed given value to required value /root/.ssh/id_rsa.pub
Additional information:
* Parameter CONFIG_NEUTRON_L2_AGENT: You have chosen OVN Neutron backend. Note that this backend does not support the VPNaaS plugin. Geneve will be used as the encapsulation method for tenant networks
=>에러 아님 , generation answer file;설치와 관련된 config파일
[root@openstack ~]# vi answers.txt
아래 사항들 /이용하여 찾아서 수정해주기.
CONFIG_DEFAULT_PASSWORD=Test1234!
CONFIG_KEYSTONE_ADMIN_PW=Test1234!
CONFIG_CINDER_VOLUMES_SIZE=100G
CONFIG_NTP_SERVERS=kr.pool.ntp.org
CONFIG_HEAT_INSTALL=y
CONFIG_NEUTRON_L2_AGENT=openvswitch
=>실무에서 쓰이는 스위치. L2 ; layer 2(=switch hub) 일반적인 스위치.
CONFIG_NEUTRON_ML2_TYPE_DRIVERS=vxlan,flat
=>flat; 우리가 만든 VM들이 bridge기능 사용할 수 있도록.
CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES=vxlan
CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS=openvswitch
CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=extnet:br-ex
CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-ex:ens160
CONFIG_PROVISION_DEMO=n
[root@openstack ~]# packstack --answer-file /root/answers.txt
CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=extnet:br-ex
CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-ex:ens160
ens160 실제랜카드
vm은 extnet이 유일한 외부 랜카드라고 여김.
[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
OPENSTACK -셋팅 (네트워크)
flavor생성
이미지 생성
기타
인스턴스
생성한 인스턴스 내부로 접근 - mobaxterm에서 ns에서 부여받은 도메인 또는 ip로 접근 가능 ( 생성해둔 key사용) => web01 설치
[centos@web01centos7 ~]$ sudo yum install -y httpd
[centos@web01centos7 ~]$ sudo vi /etc/sysconfig/selinux
[centos@web01centos7 ~]$ sudo systemctl enable --now httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
기타
프로젝트에 esxi넣기! 세미든 최종이든...
openstack도...
다 때려넣으면 복잡하긴 하지만 어쨌든,.,.,
프라이빗클라우드에서 default 보안그룹은 해커의 공격대상이 된다.
보안그룹에서,
내보냄 = outbound = egress (openstack에서 바깥으로)
들어옴 = inbound = ingress (밖에서 openstack으로 들어옴)
1:1 NAT(Floating IP와 Internal IP연결한다)
굳 왔다갑니다~