liuhongyu 发表于 2017-6-25 16:10:22

cloudstack 4.1.1 Installation

  2012年11月26日 发布
  Reference: ​http://cloudstack.apache.org/docs/en-US/Apache_CloudStack/4.1.1/html/Installation_Guide/index.html


  4.1 버전에서 추가된 기능들. ​http://www.shapeblue.com/cloudstack/apache-cloudstack-4-1-new-features/


  ==다시 설치시 기존 cloudstack 지우기
  # yum list|grep cloud* (cloud package검색)
  # yum erase cloud-client
  # yum erase cloud-agent-scripts
  # yum erase jakarta-commons-dbcp
  # yum erase cloud-deps
  # yum erase cloud-python.x86_64
  # yum erase jakarta-commons-pool
  # rm -rf /var/cache/cloud
  # rm -rf /var/log/cloud
  # rm -rf /var/lib/cloud
  # rm -rf /etc/cloud/
  # rm -rf /usr/lib64/cloud
  # rm -rf /usr/share/cloud
  # rm -rf /var/cache/yum/x86_64/6Server/cloud-temp
  # rm -rf /var/lib/yum/repos/x86_64/6Server/cloud-temp






  ==데이터베이스 삭제
  # drop database cloud;
  # drop database cloud_usage;
  # drop database cloudbridge;


  


  테스트베드



  ve08: Management Server
  public: 10.0.2.8
  private: 10.0.1.8


  ve09: NFS Server and Host1(KVM)
  public: 10.0.2.9
  private: 10.0.1.9


  ve04:Host2(KVM)
  public: 10.0.2.4
  private: 10.0.1.4



  브릿지 설정


  ==(ve04,ve09)==
  eth0, eth1, cloudbr0, cloudbr1




  eth0


  

DEVICE=eth0
HWADDR=XXXXXXXXXXXXXXXXXX
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
IPV6INIT=no
USERCTL=no
BRIDGE=cloudbr0

  cloudbr0

DEVICE=cloudbr0
TYPE=Bridge
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
IPADDR=10.0.2.4
NETMASK=255.255.0.0
GATEWAY=10.0.0.1
DNS1=10.0.0.1
IPV6INIT=no
USERCTL=no

  Management Server 설치


  


  1. cloudstack.repo생성(ve08,ve09,ve04)


  # vi /etc/yum.repos.d/cloudstack.repo


name=cloudstack
baseurl=http://cloudstack.apt-get.eu/rhel/4.1/
enabled=1
gpgcheck=0





  Apache CloudStack org홈페이지에 가서 소스코드를 다운 받아 repository를 만들어 설치를 하는 방법은 다음 링크 참조.
  ​http://cloudstack.apache.org/docs/en-US/Apache_CloudStack/4.1.1/html/Installation_Guide/sect-source-verify.html 최근 릴리즈 된 4.1.1버전 소스코드 다운 로드 링크 다음 참조.
  ​http://cloudstack.apache.org/downloads.html


  


  


  2. OS환경 설정 (ve08,ve04,ve09)




  # hostname -f
  알수 없는 host 가 나오면 vi /etc/hosts 에 10.0.1.8 ve08.localdomain ve08 추가 하면 됨.
  혹은
  # vi /etc/hostname
  ve04
  # hostname –F /etc/hostname


  # hostname -f
  ve08.localdomain # service network restart
  # vi /etc/selinux/config
  permissive로 수정 (disabled로 하면 cloudstack과 database초기화 시 문제 생김)
  # setenforce Permissive
  # yum install ntp
  # service ntpd start




[*]nfs 설정


  (ve09)
  # mkdir -p /export/primary
  # mkdir -p /export/secondary
  # vi /etc/exports 에 /export *(rw,sync,no_root_squash) 추가.
  # exportfs –a
  (ve09,ve08,ve04)
  # vi /etc/sysconfig/nfs (주석 풀기)

LOCKD_TCPPORT=32803
LOCKD_UDPPORT=32769
MOUNTD_PORT=892
RQUOTAD_PORT=875
STATD_PORT=662
STATD_OUTGOING_PORT=2020

iptables -I INPUT -s 172.16.0.0/24 -m state --state NEW -p udp --dport 111 -j ACCEPT
iptables -I INPUT -s 172.16.0.0/24 -m state --state NEW -p tcp --dport 111 -j ACCEPT
iptables -I INPUT -s 172.16.0.0/24 -m state --state NEW -p tcp --dport 2049 -j ACCEPT
iptables -I INPUT -s 172.16.0.0/24 -m state --state NEW -p tcp --dport 32803 -j ACCEPT
iptables -I INPUT -s 172.16.0.0/24 -m state --state NEW -p udp --dport 32769 -j ACCEPT
iptables -I INPUT -s 172.16.0.0/24 -m state --state NEW -p tcp --dport 892 -j ACCEPT
iptables -I INPUT -s 172.16.0.0/24 -m state --state NEW -p udp --dport 892 -j ACCEPT
iptables -I INPUT -s 172.16.0.0/24 -m state --state NEW -p udp --dport 875 -j ACCEPT
iptables -I INPUT -s 172.16.0.0/24 -m state --state NEW -p tcp --dport 875 -j ACCEPT
iptables -I INPUT -s 172.16.0.0/24 -m state --state NEW -p udp --dport 662 -j ACCEPT
iptables -I INPUT -s 172.16.0.0/24 -m state --state NEW -p tcp --dport 662 -j ACCEPT







  # iptables-save>/etc/sysconfig/iptables
  # /etc/init.d/iptables resatart
  # vi /etc/idmapd.conf
  domain = cloud.priv (주석 풀고 수정)


  (ve08,ve04)
  # mkdir -p /mnt/primary
  # mkdir -p /mnt/secondary
  # sudo mount –t nfs ve09:/export/primary /mnt/primary
  # sudo mount –t nfs ve09:/export/secondary /mnt/sedondary
  # vi /etc/fstab 추가



172.16.0.101:/mnt/data/cloudstack/primary /mnt/primary nfs rw,tcp,intr 0 1
172.16.0.101:/mnt/data/cloudstack/secondary /mnt/secondary nfs rw,tcp,intr 0 1



  # service rpcbind start
  # service nfs start
  # chkconfig nfs on
  # chkconfig rpcbind on


  



Filesystem            SizeUsed Avail Use% Mounted on
/dev/sda3             214G4.1G199G   3% /
tmpfs               7.8G228K7.8G   1% /dev/shm
/dev/sda1             689M   44M611M   7% /boot
10.0.1.9:/export/primary
50G9.2G   38G20% /mnt/primary
10.0.1.9:/export/secondary
50G9.2G   38G20% /mnt/secondary



  4. MySQL 설치




  # yum install mysql-server
  # vi /etc/my.cnf (기존 파일에 추가)


innodb_rollback_on_timeout=1
innodb_lock_wait_timeout=600
max_connections=350
log-bin=mysql-bin
binlog-format = 'ROW'


  # service mysqld start
  # iptables -I INPUT –p tcp --dport 3306 –j ACCEPT
  # iptables-save>/etc/sysconfig/iptables
  # /etc/init.d/iptables restart


  설치시 애러 날때: (vi /var/log/mysqld.log확인)






  5. cloudstack-management 설치






  # yum install cloud-client (약 30min)
  vhd-utl 파일 다운로드
  # cd /usr/share/cloudstack-common/scripts/vm/hypervisor/xenserver
  # wget ​http://download.cloud.com.s3.amazonaws.com/tools/vhd-util


  # jasypt-1.9.0.jar파일 다운 로드 필요하다는 메시지 뜨면 아래 링크로 다운 받음 /usr/share/cloudstack-common/lib에 다운 받음
  ​http://repo1.maven.org/maven2/org/jasypt/jasypt/1.9.0/jasypt-1.9.0.jar


  cloudstack-setup-databases설정
  # cloudstack-setup-databases cloud:password@localhost --deploy-as=root

Mysql user name:cloud                                                         [ OK ]
Mysql user password:password                                                    [ OK ]
Mysql server ip:localhost                                                       [ OK ]
Mysql server port:3306                                                          [ OK ]
Mysql root user name:root                                                       [ OK ]
Mysql root user password:                                                       [ OK ]
Checking Cloud database files ...                                             [ OK ]
Checking local machine hostname ...                                             [ OK ]
Checking SELinux setup ...                                                      [ OK ]
Detected local IP address as 10.0.1.8, will use as cluster management server node IP[ OK ]
Preparing /etc/cloudstack/management/db.properties                              [ OK ]
Applying /usr/share/cloudstack-management/setup/create-database.sql             [ OK ]
Applying /usr/share/cloudstack-management/setup/create-schema.sql               [ OK ]
Applying /usr/share/cloudstack-management/setup/create-database-premium.sql   [ OK ]
Applying /usr/share/cloudstack-management/setup/create-schema-premium.sql       [ OK ]
Applying /usr/share/cloudstack-management/setup/server-setup.sql                [ OK ]
Applying /usr/share/cloudstack-management/setup/templates.sql                   [ OK ]
Applying /usr/share/cloudstack-bridge/setup/cloudbridge_db.sql                  [ OK ]
Applying /usr/share/cloudstack-bridge/setup/cloudbridge_schema.sql            [ OK ]
Applying /usr/share/cloudstack-bridge/setup/cloudbridge_multipart.sql         [ OK ]
Applying /usr/share/cloudstack-bridge/setup/cloudbridge_index.sql               [ OK ]
Applying /usr/share/cloudstack-bridge/setup/cloudbridge_multipart_alter.sql   [ OK ]
Applying /usr/share/cloudstack-bridge/setup/cloudbridge_bucketpolicy.sql      [ OK ]
Applying /usr/share/cloudstack-bridge/setup/cloudbridge_policy_alter.sql      [ OK ]
Applying /usr/share/cloudstack-bridge/setup/cloudbridge_offering.sql            [ OK ]
Applying /usr/share/cloudstack-bridge/setup/cloudbridge_offering_alter.sql      [ OK ]
Processing encryption ...                                                       [ OK ]
Finalizing setup ...                                                            [ OK ]
CloudStack has successfully initialized database, you can check your database configuration in /etc/cloudstack/management/db.properties


  # cloudstack-setup-management
  # service cloudstack-management restart (다시 시작 시)
  # tail -f /usr/share/cloudstack-management/logs/management-server.log (로그 확인)

DEBUG (StatsCollector-1:null) HostStatsCollector is running...
DEBUG (StatsCollector-2:null) VmStatsCollector is running...
DEBUG (StatsCollector-3:null) StorageCollector is running...


  (정확히 설치 됨)


  Web browser에서 ​http://150.183.249.94:8008/client 로 접속
  User: admin
  Password: password


  다음 단계를 위한 템플릿 다운
  /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary/ -u ​http://download.cloud.com/templates/4.2/systemvmtemplate-2013-06-12-master-kvm.qcow2.bz2 -h kvm -F


  # sudo /usr/lib64/cloud/common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary -u ​http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2 -h kvm -F
  템플릿 다운받은 다음 만약 ms와 분리된 nfs server로 설정할 경우 꼭 umount /mnt/secondary 하고 이 디렉토리 삭제 한다.

Here are the correct links for 4.2.0:
Xenserver : http://download.cloud.com/templates/4.2/systemvmtemplate-2013-07-12-master-xen.vhd.bz2   
KVM      :    http://download.cloud.com/templates/4.2/systemvmtemplate-2013-06-12-master-kvm.qcow2.bz2
VMware   : http://download.cloud.com/templates/4.2/systemvmtemplate-4.2-vh7.ova








  host 하이퍼바이저 설치(cloud-agent)
  KVM Hypervisor Host Installation ​http://cloudstack.apache.org/docs/en-US/Apache_CloudStack/4.1.1/html/Installation_Guide/hypervisor-kvm-install-flow.html
  Citrix XenServer? Installation for CloudStack ​http://cloudstack.apache.org/docs/en-US/Apache_CloudStack/4.1.1/html/Installation_Guide/citrix-xenserver-installation.html
  VMware vSphere Installation and Configuration ​http://cloudstack.apache.org/docs/en-US/Apache_CloudStack/4.1.1/html/Installation_Guide/vmware-install.html


  (ve04, ve09)
  note: 4.1버전의 agent는 OS버전과 맞지 않아서 enable되지 않기 때문에 여기서 4.0.2버전 설치


  # hostname –f
  # yum install ntp
  # vi /etc/yum.repos.d/cloudstack.repo


name=cloudstack
baseurl=http://cloudstack.apt-get.eu/rhel/4.1/
enabled=1
gpgcheck=0


  # yum install cloud-agent
  # vi /etc/libvirt/libvirtd.conf (다음 내용 추가)

listen_tls=0
listen_tcp=1
tcp_port="16509"
auth_tcp="none"
mdns_adv = 0


  # vi /etc/sysconfig/libvirtd 에서 LIBVIRTD_ARGS=“--listen”주석 해제
  # vi /etc/libvirt/qemu.conf 에서 vnc_listen=“0.0.0.0”주석 해제
  # service libvirtd restart
  virsh net-dumpxml default
  service libvirtd restart
  # iptables –I INPUT –p tcp –m tcp --dport 22 –j ACCEPT
  # iptables –I INPUT –p tcp –m tcp --dport 1798 –j ACCEPT
  # iptables –I INPUT –p tcp –m tcp --dport 16509 –j ACCEPT
  # iptables –I INPUT –p tcp –m tcp --dport 5900:6100 –j ACCEPT
  # iptables –I INPUT –p tcp –m tcp --dport 49152:49216 –j ACCEPT

iptables -I INPUT -p tcp -m tcp --dport 22 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 1798 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 16509 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 5900:6100 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 49152:49216 -j ACCEPT


  # iptables-save > /etc/sysconfig/iptables
  # /etc/init.d/iptables restart
  # cloud-setup-agent (다음 설정)

Management Server IP: 10.0.1.8
Zone ID: default //zone 이름
Pod ID: default //pod 이름
Cluster ID: default //cluster 이름
VM creation bridge: cloudbr0 // vm생성할 브릿지 설정
页: [1]
查看完整版本: cloudstack 4.1.1 Installation