상단

CloudStack을 정리 합니다.

 
 
 

CloudStack 개요


CloudStack 설치


설치용 파일 준비

 
 

노트북 환경 설정

  • 노트북 환경

    • Windows 7 64 bits, 16 GB Memory, 50 GB Disk

     
  • c:/windows/system32/drivers/etc/hosts

 
 192.168.70.133      node133.jopenbusiness.com       node133
 192.168.70.181      csnode101.cloudstack.com        csnode101
 192.168.70.182      csnode102.cloudstack.com        csnode102
 192.168.70.191      csnode201.cloudstack.com        csnode201
 192.168.70.192      csnode202.cloudstack.com        csnode202
 
  • VirtualBox 4.3.12 설치

    • Adapter : 192.168.70.1, 255.255.255.0

    • DHCP 서버 : 192.168.70.100, 255.255.255.0, 192.168.70.181 ~ 192.168.70.254

    • csnode101 : 1 CPU / 2 GB memory / 100 GB disk

    • csnode102 : 1 CPU / 2 GB memory / 100 GB disk

    • csnode201 : 2 CPU / 4 GB memory / 100 GB disk

    • csnode202 : 2 CPU / 4 GB memory / 100 GB disk

    • 네트워크 설정 시 "호스트 전용 어댑터"의 "무작위 모드"는 "모두 허용"으로 설정

      • csnode101, csnode102

        • NAT

        • VirtualBox Host-Only Ethernet Adapter, Intel PRO/1000 MT Desktop (82540EM), 모두 허용

        • VirtualBox Host-Only Ethernet Adapter #2, Intel PRO/1000 MT Desktop (82540EM), 모두 허용

      • csnode103, csnode104

        • NAT

        • VirtualBox Host-Only Ethernet Adapter, Intel PRO/1000 MT Desktop (82540EM), 모두 허용

        • VirtualBox Host-Only Ethernet Adapter #2, Intel PRO/1000 MT Desktop (82540EM), 모두 허용

 
 

DNS Server 설치

  • [[VirtualBox]]의 DNS에 CentOS 6.5 설치

    • 1 CPU / 1 GB Memory / 100 GB disk

    • 192.168.70.133, 255.255.255.0, 192.168.70.1

     
  • vi ~/.bash_profile

 
 alias dir='ls -alF'
 alias dird='ls -alF | grep /'
 
 export LANG=ko_KR.utf8
 
  • 네트워크 설정

 
 cd /etc/sysconfig/network-scripts
 
 vi ifcfg-eth0
    DEVICE=eth0
    HWADDR=생략
    TYPE=Ethernet
    UUID=생략
    ONBOOT=yes
    NM_CONTROLLED=yes
    BOOTPROTO=dhcp
 
 vi ifcfg-eth1
    DEVICE=eth1
    BOOTPROTO=none
    HWADDR=생략
    UUID=생략
    ONBOOT=yes
    IPADDR=192.168.70.133
    NETMASK=255.255.255.0
    GATEWAY=192.168.70.1
    TYPE=Ethernet
    USERCTL=no
    IPV6INIT=no
    PEERDNS=yes
 
 ifdown eth0
 ifup eth0
 ifdown eth1
 ifup eth1
 
  • vi /etc/hosts

 
 192.168.70.133      node133.jopenbusiness.com       node133
 192.168.70.181      csnode101.cloudstack.com        csnode101
 192.168.70.182      csnode102.cloudstack.com        csnode102
 192.168.70.191      csnode201.cloudstack.com        csnode201
 192.168.70.192      csnode202.cloudstack.com        csnode202
 
  • CentOS update

 
 ping -c 3 google.com
 yum update
 
  • DNS Server 설치

 
 yum install bind bind-*
 service named start
 #systemctl start named.service
 
  • 방화벽에서 TCP 53, UDP 53 포트를 열어 둔다.

 
 iptables -A INPUT -p udp -m state --state NEW --dport 53 -j ACCEPT
 iptables -A INPUT -p tcp -m state --state NEW --dport 53 -j ACCEPT
 service iptables save
 service iptables restart
 cat /etc/sysconfig/iptables
 
  • CentOS 7의 경우, 방화벽에서 TCP 53, UDP 53 포트를 열어 둔다.

 
 firewall-cmd --permanent --zone=public --add-port=53/tcp
 firewall-cmd --permanent --zone=public --add-port=53/udp
 firewall-cmd --reload
 firewall-cmd --zone=public --list-ports
 
  • DNS Server 설정

 
 rndc-confgen -a -r /dev/urandom
 chown named:named /etc/rndc.key
 rndc status
 
  • 접속 권한 설정

    • vi /etc/named.conf

 
 listen-on port 53 { any; };
 allow-query     { any; };
 
  • DNS Server 기동

 
 service named restart
 # systemctl restart  named.service
 
  • DNS Server 동작 확인

 
 dig @127.0.0.1 google.com any
 dig @192.168.70.133 google.com any
 dig @node133.jopenbusiness.com google.com any
 
  • 다른 서버에서 접속하여 사용하도록 설정하는 방법

    • vi /etc/resolv.conf

 
 nameserver 192.168.70.133
 ;  nameserver 175.115.93.35
 ;  nameserver 168.126.63.1
  • /etc/resolv.conf 파일의 자동 초기화 방지 방법 (비권장)

 
 chattr +i /etc/resolv.conf
 
 
 

CloudPlatform 설치

  • [[VirtualBox]]의 csnode101에 CentOS 6.5 설치

    • 1 CPU / 2 GB Memory / 100 GB disk

    • 192.168.70.181, 255.255.255.0, 192.168.70.1

     
  • vi ~/.bash_profile

 
 alias dir='ls -alF'
 alias dird='ls -alF | grep /'
 
 export LANG=ko_KR.utf8
 
  • 네트워크 설정

 
 cd /etc/sysconfig/network-scripts
 
 vi ifcfg-eth0
    DEVICE=eth0
    HWADDR=생략
    TYPE=Ethernet
    UUID=생략
    ONBOOT=yes
    NM_CONTROLLED=yes
    BOOTPROTO=dhcp
 
 vi ifcfg-eth1
    DEVICE=eth1
    BOOTPROTO=none
    HWADDR=생략
    UUID=생략
    ONBOOT=yes
    IPADDR=192.168.70.181
    NETMASK=255.255.255.0
    GATEWAY=192.168.70.1
    TYPE=Ethernet
    USERCTL=no
    IPV6INIT=no
    PEERDNS=yes
 
 ifdown eth0
 ifup eth0
 ifdown eth1
 ifup eth1
 
  • vi /etc/hosts

 
 192.168.70.133      node133.jopenbusiness.com       node133
 192.168.70.181      csnode101.cloudstack.com        csnode101
 192.168.70.182      csnode102.cloudstack.com        csnode102
 192.168.70.191      csnode201.cloudstack.com        csnode201
 192.168.70.192      csnode202.cloudstack.com        csnode202
 
  • CentOS update

 
 ping -c 3 google.com
 yum update
 
  • XenServer Tools 설치

    • CD-ROM에 xs-tools-6.2.0.iso 파일을 삽입 합니다.

 
 mkdir /cdrom
 mount -r /dev/cdrom /cdrom
 cd /cdrom/Linux/
 ./install.sh
 reboot
 
  • CloudPlatform 설치

 
 mkdir /install
 cd /install
 //--- 다운로드 받은 설치 파일을 여기에 올릴 것
 tar -xvf CloudPlatform_4.3.0.1-rhel6.4.tar.gz
 cd CloudPlatform-4.3.0.1-rhel6.4
 
 ./install.sh --install-management
 ./install.sh --install-database
 
  • MySQL 환경 설정

    • vi /etc/my.cnf

 
 [mysql](mysql.md)
 default-character-set=utf8
 
 [mysqld](mysqld.md)
 datadir=/var/lib/mysql
 socket=/var/lib/mysql/mysql.sock
 user=mysql
 # Disabling symbolic-links is recommended to prevent assorted security risks
 symbolic-links=0 
 
 innodb_rollback_on_timeout=1
 innodb_lock_wait_timeout=600
 max_connections=350
 log-bin=mysql-bin
 binlog-format = 'ROW'
 
 character-set-client-handshake=FALSE
 init_connect="SET collation_connection=utf8_general_ci"
 init_connect="SET NAMES utf8"
 default-character-set=utf8
 character_set_client=utf8
 character-set-server=utf8
 collation-server=utf8_general_ci
 
 [mysqld_safe](mysqld_safe.md)
 log-error=/var/log/mysqld.log
 pid-file=/var/run/mysqld/mysqld.pid
 
 [client](client.md)
 default-character-set=utf8
 
 [mysqldump](mysqldump.md)
 default-character-set=utf8
  • MySQL 관리자 암호 설정

 
 service mysqld restart
 mysqladmin -u root password 'demo1234';
 #mysql -u root mysql
 #   SET PASSWORD = PASSWORD('demo1234');
 #   GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
 #   GRANT ALL PRIVILEGES ON *.* TO 'root'@'csnode101.cloudstack.com' WITH GRANT OPTION;
 #   exit 
 mysql -uroot -p mysql
 
  • CentOS 보안 설정

    • vi /etc/selinux/config

 
 SELINUX=permissive
  • 서버 rebooting

 
 shutdown -r now
 
  • CloudPlatform을 위한 MySQL 설정

 
 //--- cloud / demo1234 DB 사용자로 CloudStack DB 정보 설정
 cloudstack-setup-databases cloud:demo1234@localhost --deploy-as=root:demo1234
 //--- cloud, cloud_usage, cloudbridge 데이터베이스가 생성됨
 //--- /etc/cloudstack/management/db.properties 파일이 생성됨
 mysql -ucloud -p cloud
 
 //------------------------------------------------------------
 //--- HVM (Hardware Virtual Machine)을 지원하지 않을 경우 아래 설정을 합니다.
 //------------------------------------------------------------
 mysql -uroot -p mysql
    INSERT INTO `cloud`.`configuration` (`category`, `instance`, `component`, `name`, `value`, `description`) 
           VALUES ('Advanced', 'DEFAULT', 'management-server', 'xen.check.hvm', 'false', 
                   'Should we allow only the XenServers support HVM');
    commit;
    select * from cloud.configuration;
    select * from cloud.configuration where name = 'xen.check.hvm';
    exit
 
 cloudstack-setup-management
 
  • CloudPlatform 기동/종료

 
 service cloudstack-management restart
 
 
 

NFS Server 설치

  • [[VirtualBox]]의 csnode102에 CentOS 6.5 설치

    • 1 CPU / 2 GB Memory / 100 GB disk

    • 192.168.70.182, 255.255.255.0, 192.168.70.1

     
  • vi ~/.bash_profile

 
 alias dir='ls -alF'
 alias dird='ls -alF | grep /'
 
 export LANG=ko_KR.utf8
 
  • 네트워크 설정

 
 cd /etc/sysconfig/network-scripts
 
 vi ifcfg-eth0
    DEVICE=eth0
    HWADDR=생략
    TYPE=Ethernet
    UUID=생략
    ONBOOT=yes
    NM_CONTROLLED=yes
    BOOTPROTO=dhcp
 
 vi ifcfg-eth1
    DEVICE=eth1
    BOOTPROTO=none
    HWADDR=생략
    UUID=생략
    ONBOOT=yes
    IPADDR=192.168.70.182
    NETMASK=255.255.255.0
    GATEWAY=192.168.70.1
    TYPE=Ethernet
    USERCTL=no
    IPV6INIT=no
    PEERDNS=yes
 
 ifdown eth0
 ifup eth0
 ifdown eth1
 ifup eth1
 
  • vi /etc/hosts

 
 192.168.70.133      node133.jopenbusiness.com       node133
 192.168.70.181      csnode101.cloudstack.com        csnode101
 192.168.70.182      csnode102.cloudstack.com        csnode102
 192.168.70.191      csnode201.cloudstack.com        csnode201
 192.168.70.192      csnode202.cloudstack.com        csnode202
 
  • CentOS update

 
 ping -c 3 google.com
 yum update
 
  • XenServer Tools 설치

    • CD-ROM에 xs-tools-6.2.0.iso 파일을 삽입 합니다.

 
 mkdir /cdrom
 mount -r /dev/cdrom /cdrom
 cd /cdrom/Linux/
 ./install.sh
 reboot
 
  • NFS Server 설치

 
 yum install nfs-utils nfs-utils-lib
 
 service nfs restart
 chkconfig nfs on
 
  • NFS Server 설정

 
 groupadd -g 60001 nfsgroup
 useradd  -u 60001 -d /home/nfsuser -m -g nfsgroup nfsuser
 
 mkdir -p /nfs/pnus/primary/cluster001
 mkdir -p /nfs/pnus/secondary
 chown -R nfsuser:nfsgroup /nfs
 chmod -R 755 /nfs
 
  • vi /etc/exports

 
 /nfs *(rw,async,no_root_squash)
 
  • vi /etc/sysconfig/nfs

 
 RQUOTAD_PORT=875                  #--- Port rquotad
 LOCKD_TCPPORT=32803               #--- TCP port rpc.lockd
 LOCKD_UDPPORT=32769               #--- UDP port rpc.lockd
 MOUNTD_PORT=892                   #--- Port rpc.mountd
 STATD_PORT=662                    #--- Port rpc.statd
 STATD_OUTGOING_PORT=2020          #--- Outgoing port statd
 
  • vi /etc/sysconfig/iptables

 
 #-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT 다음에 추가
 -A INPUT -m state --state NEW -p udp --dport 111 -j ACCEPT
 -A INPUT -m state --state NEW -p tcp --dport 111 -j ACCEPT
 -A INPUT -m state --state NEW -p tcp --dport 2049 -j ACCEPT
 -A INPUT -m state --state NEW -p tcp --dport 32803 -j ACCEPT
 -A INPUT -m state --state NEW -p udp --dport 32769 -j ACCEPT
 -A INPUT -m state --state NEW -p tcp --dport 892 -j ACCEPT
 -A INPUT -m state --state NEW -p udp --dport 892 -j ACCEPT
 -A INPUT -m state --state NEW -p tcp --dport 875 -j ACCEPT
 -A INPUT -m state --state NEW -p udp --dport 875 -j ACCEPT
 -A INPUT -m state --state NEW -p tcp --dport 662 -j ACCEPT
 -A INPUT -m state --state NEW -p udp --dport 662 -j ACCEPT
 
  • CentOS 7에서 방화벽 설정

    • 111/tcp, 111/udp : RPC 4.0 portmapper

    • 2049/tcp, 2049/ucp : NFSD (NFS Server)

    • vi /etc/sysconfig/nfs : Portmap static ports

 
 rpcinfo -p             #--- 사용하는 port 확인
 
 firewall-cmd --permanent --zone=public --add-port=111/tcp
 firewall-cmd --permanent --zone=public --add-port=111/udp
 firewall-cmd --permanent --zone=public --add-port=2049/tcp
 firewall-cmd --permanent --zone=public --add-port=2049/udp
 
 firewall-cmd --permanent --zone=public --add-port=875/tcp
 firewall-cmd --permanent --zone=public --add-port=875/udp
 firewall-cmd --permanent --zone=public --add-port=32803/tcp
 firewall-cmd --permanent --zone=public --add-port=32769/udp
 firewall-cmd --permanent --zone=public --add-port=20048/tcp
 firewall-cmd --permanent --zone=public --add-port=20048/udp
 
 firewall-cmd --permanent --zone=public --add-port=892/tcp
 firewall-cmd --permanent --zone=public --add-port=892/udp
 firewall-cmd --permanent --zone=public --add-port=662/tcp
 firewall-cmd --permanent --zone=public --add-port=662/udp
 firewall-cmd --permanent --zone=public --add-port=2020/tcp
 firewall-cmd --permanent --zone=public --add-port=2020/udp
 
 # firewall-cmd --permanent --zone=public --add-port=53987/udp
 # firewall-cmd --permanent --zone=public --add-port=57960/udp
 
 firewall-cmd --reload
 firewall-cmd --zone=public --list-ports
 ### systemctl stop firewalld.service
 
  • vi /etc/idmapd.conf

 
 Domain = cloudstack.com
 
  • 서버 재기동

 
 reboot
 
 service rpcbind restart
 service nfslock restart
 service nfs restart
 
 systemctl restart rpcbind
 systemctl restart nfs-server
 systemctl restart nfs-lock
 systemctl restart nfs-idmap
 
 systemctl enable rpcbind
 systemctl enable nfs-server
 systemctl enable nfs-lock
 systemctl enable nfs-idmap
  • 서비스 확인

 
 showmount -e
 rpcinfo -p localhost
 
 
 

NFS 접속 설정

  • csnode101에서 아래 작업을 진행 합니다.

  • NFS Client 설치

 
 yum install nfs-utils nfs-utils-lib
 groupadd -g 60001 nfsgroup
 useradd  -u 60001 -d /home/nfsuser -m -g nfsgroup nfsuser
 
 service rpcbind start
 service nfslock start
 service nfs start
 chkconfig nfs on
 
  • NFS mount

 
 showmount -e csnode102.cloudstack.com
 
 #--- 이미 설정이 되어 있으므로 아래 설정은 생략 합니다.
 #setenforce permissive
 #vi /etc/selinux/config
 #   SELINUX=permissive
 
 yum install ntp
 service ntpd start
 chkconfig ntpd on
 
  • wget 설치

 
 yum install wget
 

System VM Template 준비

  • csnode101에서 아래 작업을 진행 합니다.

  • 다운로드 받은 설치 파일을 /root/install/ 폴더에 올릴 것

    • /root/install/systemvm64template-2014-04-10-master-xen.vhd.bz2

     
  • System VM 준비

 
 mkdir -p /mnt/secondary
 mount -t nfs -o vers=3 csnode102.cloudstack.com:/nfs/pnus/secondary /mnt/secondary
 
 cd /usr/share/cloudstack-common/scripts/storage/secondary
 ./cloud-install-sys-tmplt -m /mnt/secondary/ -f /root/install/systemvm64template-2014-04-10-master-xen.vhd.bz2 -h xenserver -F
 ### ./cloud-install-sys-tmplt -m /mnt/secondary/ -u http://download.cloud.com/templates/4.3/systemvm64template-2014-04-10-master-xen.vhd.bz2 -h xenserver -F
 
 ls -alF /mnt/secondary/template/tmpl/1/1/
 umount /mnt/secondary
 
 #--- csnode102에서 조회
 ls -alF /nfs/pnus/primary
 ls -alF /nfs/pnus/secondary/template/tmpl/1/1
 

XenServer 설치

  • VirtualBox에 csnode201, csnode202 생성

    • XenServer 6.2 설치 (Linux, Red Hat (64 bit))

    • 2 CPU / 4 GB Memory / 100 GB Disk

     
  • csnode201 XenServer 설치

    • Select Keymap : qwerty us

    • Welcome to XenServer Setup : Ok

    • End User License Agreement : Accept EULA

    • System Hardware : Ok

    • Virtual Machine Storage : sda

    • Select Installation Source : Local media

    • Supplemental Packs : No

    • Verify InstallationSource : Skip verification

    • Set Password : demo1234

    • Networking : eth1

    • Networking : 192.168.70.191, 255.255.255.0, 192.168.70.1

    • Hostname and DNS Configuration

      • Hostname : xenserver-csnode201

      • DNS Server : 175.115.93.35, 168.126.63.1

    • Select Time Zone : Asia, Seoul

    • System time : Using NTP

    • NTP Configuration

      • NTP Server : 0.xenserver.pool.ntp.org, 1.xenserver.pool.ntp.org, 2.xenserver.pool.ntp.org

    • Confirm Installation : Install XenServer

     
  • csnode202 XenServer 설치

    • Select Keymap : qwerty us

    • Welcome to XenServer Setup : Ok

    • End User License Agreement : Accept EULA

    • System Hardware : Ok

    • Virtual Machine Storage : sda

    • Select Installation Source : Local media

    • Supplemental Packs : No

    • Verify InstallationSource : Skip verification

    • Set Password : demo1234

    • Networking : eth1

    • Networking : 192.168.70.192, 255.255.255.0, 192.168.70.1

    • Hostname and DNS Configuration

      • Hostname : xenserver-csnode202

      • DNS Server : 175.115.93.35, 168.126.63.1

    • Select Time Zone : Asia, Seoul

    • System time : Using NTP

    • NTP Configuration

      • NTP Server : 0.xenserver.pool.ntp.org, 1.xenserver.pool.ntp.org, 2.xenserver.pool.ntp.org

    • Confirm Installation : Install XenServer

     
  • XenServer에 포함된 ISO 파일 위치 : /opt/xensource/packages/iso/

    • XenCenter.iso

    • xs-tools-6.2.0.iso

     
  • vi ~/.bash_profile

 
 alias dir='ls -alF'
 alias dird='ls -alF | grep /'
 
 ### export LANG=ko_KR.utf8
 
  • vi /etc/hosts

 
 192.168.70.133      node133.jopenbusiness.com       node133
 192.168.70.181      csnode101.cloudstack.com        csnode101
 192.168.70.182      csnode102.cloudstack.com        csnode102
 192.168.70.191      csnode201.cloudstack.com        csnode201
 192.168.70.192      csnode202.cloudstack.com        csnode202
 
  • NFS Server 연동을 위해 사용자와 그룹 생성

 
 groupadd -g 60001 nfsgroup
 useradd  -u 60001 -d /home/nfsuser -m -g nfsgroup nfsuser
 
  • XenServer Support Package 설치 (옵션 사항)

 
 tar xf xenserver-cloud-supp.tgz
 xe-install-supplemental-pack xenserver-cloud-supp.iso
 
  • 주요 폴더 및 파일

    • /opt/xensource/

    • /etc/ntp.conf

    • /etc/xensource/pool.conf : Pool (Cluster) 정보

    • /var/log/xensource.log

 
 

Basic Network 설정

  • Basic Network 설정

 
 cd /opt/xensource/bin
 xe-switch-network-backend bridge
 reboot
 

Advanced Network 설정

  • Advanced Network 설정

 
 cd /opt/xensource/bin
 xe-switch-network-backend bridge
 reboot
 
  • vi /etc/xensource/network.conf

 
 openvswitch
 
  • vi /etc/sysctl.conf

 
 net.bridge.bridge-nf-call-iptables = 1
 net.bridge.bridge-nf-call-ip6tables = 1
 net.bridge.bridge-nf-call-arptables = 1
 
  • 변경 사항 적용

 
 sysctl -p /etc/sysctl.conf
 

XenServer Resource Pool 생성

  • XenCenter 6.2 설치

  • [[XenServer|XenCenter]]에서 "Add New Server" 버튼을 선택하여 XenServer를 추가 합니다.

  • XenCenter에서 Cluster001 Resource Pool을 생성 합니다.

    • xenserver-csnode201를 마스터를 등록 합니다.

    • xenserver-csnode201과 xenserver-csnode202를 Resource Pool에 포함 합니다.

    • "Window -> Log Window" 메뉴에서 진행 상태를 확인할 수 있습니다.

 
 

Basic Zone 구성


  • 로그 확인 in csnode101

 
 tail -f /var/log/cloudstack/management/management-server.log
 
  • CloudStack의 계층 구조

    • Region -> Zone (데이터센터) -> Pod (Rack) -> Cluster (Hypervisor type) -> Host

     
  • http://csnode101.cloudstack.com:8080/client/, admin / password 사이트에 접속

    • 초기 비밀번호 : password

     
  • Zone 추가

    • 이름 : Pnus

    • DNS 1 : 8.8.8.8

    • 내부 DNS 1 : 8.8.8.8

     
  • Pod 추가

    • 이름 : Pod001

    • 게이트웨이 : 192.168.70.1

    • 넷 마스크 : 255.255.255.0

    • IP 주소 범위 : 192.168.70.140 ~ 192.168.70.149 (System VM이 사용)

     
  • 손님 네트워크 추가

    • 게이트웨이 : 192.168.70.1

    • 넷 마스크 : 255.255.255.0

    • IP 주소 범위 : 192.168.70.150 ~ 192.168.70.179 (Guest VM이 사용)

     
  • 클러스터 추가

    • 하이퍼 바이저 : XenServer

    • 이름 : Cluster001 (XenCenter에서 추가한 Pool 이름을 사용할 것)

     
  • 호스트 추가 (Cluster의 Master node를 추가 합니다.)

    • 호스트명 : 192.168.70.191

    • 사용자명 : root

    • 암호 : demo1234

     
  • 기본 스토리지 추가

    • 이름 : PriCluster001

    • 프로토콜 : NFS

    • 범위 : 클러스터 (클러스터, Zone 전체)

    • 서버 : 192.168.70.182

    • 경로 : /nfs/pnus/primary/cluster001

     
  • 2차 스토리지 추가

    • NFS 서버 : 192.168.70.182

    • Provider : NFS

    • 경로 : /nfs/pnus/secondary

 
 

Advanced Zone 구성


  • 로그 확인 in csnode101

 
 tail -f /var/log/cloudstack/management/management-server.log
 
  • CloudStack의 계층 구조

    • Region -> Zone (데이터센터) -> Pod (Rack) -> Cluster (Hypervisor type) -> Host

     
  • XenCenter에서 Cluster001의 Networking 탭에서 NIC의 Properties 수정

    • Networkk 0 -> Network0

    • Networkk 1 -> Network1

    • Networkk 2 -> Network2

     
  • http://csnode101.cloudstack.com:8080/client/, admin/~ 사이트에 접속

  • Advanced type의 Zone 추가

    • 이름 : Pnus

    • DNS 1 : 8.8.8.8

    • 내부 DNS 1 : 8.8.8.8

    • Hypervisor : XenServer

    • Guest CIDR : 10.1.1.0/24

     
  • Setup Network

    • Physical network name : Network1

    • XenServer Traffic label: Network1

     
  • Public Traffic

    • 10.200.41.1, 255.255.255.0, 10.200.41.150 ~ 10.200.41.199

     
  • Pod 추가

    • 이름 : Pod001

    • 게이트웨이 : 192.168.70.1

    • 넷 마스크 : 255.255.255.0

    • IP 주소 범위 : 192.168.70.140 ~ 192.168.70.149 (System VM이 사용)

     
  • VLAN/VNI Range

    • 100 ~ 150

     
  • 클러스터 추가

    • 하이퍼 바이저 : XenServer

    • 이름 : Cluster001 (XenCenter에서 추가한 Pool 이름을 사용할 것)

     
  • 호스트 추가 (Cluster의 Master node를 추가 합니다.)

    • 호스트명 : 192.168.70.111

    • 사용자명 : root

    • 암호 : demo1234

     
  • 기본 스토리지 추가

    • 이름 : PriCluster001

    • 프로토콜 : NFS

    • 범위 : 클러스터 (클러스터, Zone 전체)

    • 서버 : 192.168.70.102

    • 경로 : /nfs/pnus/primary/cluster001

     
  • 2차 스토리지 추가

    • 이름 : SecondaryPnus

    • NFS 서버 : 192.168.70.102

    • Provider : NFS

    • 경로 : /nfs/pnus/secondary

 
 

관리자 매뉴얼


XenServer에 ISO 폴더 생성

 
 mkdir /iso
 xe sr-create name-label=iso type=iso device-config:legacy_mode=true device-config:location=/iso content-type=iso
 

CloudPlatform 설정 정보

  • MySQL에서 설정 정보 조회

 
 select category, instance, name from cloud.configuration where component = 'management-server' order by category;
 
 
 

CloudPlatform 초기화

  • MySQL 데이터 초기화

 
 service cloudstack-management stop
 #service tomcat6 stop
 cd /var/log/cloudstack/management
 rm -f *
 
 mysql -uroot -p mysql
     show databases;
     drop database cloud; 
     drop database cloud_usage; 
     drop database cloudbridge; 
     exit;
 
 //--- cloud / demo1234 DB 사용자로 CloudStack DB 정보 설정
 cloudstack-setup-databases cloud:demo1234@localhost --deploy-as=root:demo1234
 
 //------------------------------------------------------------
 //--- HVM (Hardware Virtual Machine)을 지원하지 않을 경우 아래 설정을 합니다.
 //------------------------------------------------------------
 mysql -uroot -p mysql
   INSERT INTO `cloud`.`configuration` (`category`, `instance`, `component`, `name`, `value`, `description`) 
          VALUES ('Advanced', 'DEFAULT', 'management-server', 'xen.check.hvm', 'false', 
                  'Should we allow only the XenServers support HVM');
   commit;
   select * from cloud.configuration;
   exit
 
 cloudstack-setup-management
 
 #service tomcat6 start
 service cloudstack-management start
 #--- shutdown -r now
 
 cd /var/log/cloudstack/management
 chown cloud:cloud *
 
  • Secondary에 System VM 등록

 
 mkdir -p /mnt/secondary
 mount -t nfs -o vers=3 node101.cloudstack.com:/nfs/cluster001/secondary /mnt/secondary
 
 cd /mnt/secondary
 rm -rf template
 
 cd /usr/share/cloudstack-common/scripts/storage/secondary
 ./cloud-install-sys-tmplt -m /mnt/secondary/ -u /cpman_install/systemvm64template-2014-01-14-master-xen.vhd.bz2 -h xenserver
 
 ls -alF /mnt/secondary/template/tmpl/1/1/
 ls -alF /nfs/cluster001/secondary/template/tmpl/1/1
 umount /mnt/secondary
 
 shutdown -r now
 

CloudPlatform 디버깅

  • csnode101 로그

    • /var/log/cloudstack/management/management-server.log

     
  • System VM

    • 접속 정보 : root / password

    • tail -f /var/log/cloud.log

 
 

참고 문헌


 
 

분류: Cloud

최종 수정일: 2024-09-30 12:26:18

이전글 :
다음글 :