diff --git a/src/administrators-guide/src/docbkx/content/linux-image-bulder.xml b/src/administrators-guide/src/docbkx/content/linux-image-bulder.xml
index 3d97bea..d3ee49c 100644
--- a/src/administrators-guide/src/docbkx/content/linux-image-bulder.xml
+++ b/src/administrators-guide/src/docbkx/content/linux-image-bulder.xml
@@ -17,410 +17,410 @@
-->
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xsi:schemaLocation="http://docbook.org/ns/docbook http://www.docbook.org/xml/5.0/xsd/docbook.xsd http://www.w3.org/1999/xlink http://www.w3.org/1999/xlink.xsd"
+ version="5.0">
Building Linux ImageInstall Required Packages
- Please check that hardware virtualization is supported and enabled in BIOS.
+ Please check that hardware virtualization is supported and enabled in BIOS.
The following packages should be installed on any host which will be used to build Linux Image:
-
-
- ipxe-qemu
-
-
-
-
- kvm-ipxe
-
-
-
-
- qemu-kvm
-
-
-
-
- munin-libvirt-plugins
-
-
-
-
- python-libvirt
-
-
-
-
- libvirt-bin
-
-
-
-
- libvirt0
-
-
-
-
- munin-libvirt-plugins
-
-
-
-
- python-libvirt
-
-
-
-
- virt-goodies
-
-
-
-
- virt-manager
-
-
-
-
- virt-top
-
-
-
-
- virt-what
-
-
-
-
- virtinst
-
-
-
-
- python
-
-
+
+
+ ipxe-qemu
+
+
+
+
+ kvm-ipxe
+
+
+
+
+ qemu-kvm
+
+
+
+
+ python-libvirt
+
+
+
+
+ libvirt-bin
+
+
+
+
+ libvirt0
+
+
+
+
+ virt-goodies
+
+
+
+
+ virt-manager
+
+
+
+
+ virt-top
+
+
+
+
+ virt-what
+
+
+
+
+ virtinst
+
+
+
+
+ python
+
+
- On Ubuntu you could install them using the command below:
+ On Ubuntu you could install them using the command below:
-
+
># apt-get install ipxe-qemu kvm-ipxe qemu-kvm virt-goodies \
- virtinst virt-manager libvirt0 libvirt-bin \
- munin-libvirt-plugins python python-libvirt \
- python-libxml2 python-minimal python-pycurl \
- python-pyorbit python-requests python-six \
- samba samba-common openssh-server virt-top virt-what
-
+ virtinst virt-manager libvirt0 libvirt-bin \
+ python python-libvirt \
+ python-libxml2 python-minimal python-pycurl \
+ python-pyorbit python-requests python-six \
+ samba samba-common openssh-server virt-top virt-what
+
- Build Linux Image
-
- Create a VM
-
- This section describes steps required to build an image of Linux Virtual Machine
+ Build Linux Image
+
+ Create a VM
+
+
+ This section describes the steps required to build an image of Linux Virtual Machine
which could be used with Murano. There are two possible ways to create it - from
CLI or using GUI tools. We describe both in this section.
-
-
-
- Run all commands as root.
-
-
- Way 1: Using CLI Tools
-
-
- This section describes the required step to launch a VM using CLI tools only.
-
+
+
+ Run all commands as root.
+
+
+
+ Way 1: Using CLI Tools
+
+
+ This section describes the required step to launch a VM using CLI tools only.
+
-
-
- Preallocate disk image
-
-
+
+
+ Preallocate disk image
+
+
># qemu-img create -f qcow2 /var/lib/libvirt/images/cloud-linux.img 10G
-
-
-
-
- Start the VM
-
-
+
+
+
+
+ Start the VM
+
+
># virt-install --connect qemu:///system --hvm --name cloud-linux \
- --ram 2048 --vcpus 2 --cdrom /PATH_TO_YOUR_LINUX.ISO \
- --disk path=/var/lib/libvirt/images/cloud-linux.img, \
- format=qcow2,bus=virtio,cache=none \
- --network network=default,model=virtio \
- --memballoon model=virtio --vnc --os-type=linux \
- --accelerate --noapic --keymap=en-us --video=cirrus --force
-
-
+ --ram 2048 --vcpus 2 --cdrom /PATH_TO_YOUR_LINUX.ISO \
+ --disk path=/var/lib/libvirt/images/cloud-linux.img, \
+format=qcow2,bus=virtio,cache=none \
+ --network network=default,model=virtio \
+ --memballoon model=virtio --vnc --os-type=linux \
+ --accelerate --noapic --keymap=en-us --video=cirrus --force
+
+
-
- Way 2: Using virt-manager UI
-
-
- A VM also could be lauched via GUI tools like virt-manager.
-
-
-
-
- Launch virt-manager from shell
- as root
-
-
-
- Set a name for VM and select Local install media
-
-
-
-
- Add one cdrom and attach your linux ISO image to it
-
-
-
-
- Select OS type Linux and it's
- version choose yours
+
+ Way 2: Using virt-manager UI
-
-
-
- Set CPU and RAM amount
-
-
-
-
- Deselect option Enable storage for this
- virtual machine
+
+ A VM also could be lauched via GUI tools like virt-manager.
-
-
-
- Select option Customize configuration before
- install
+
+
+
+
+ Launch virt-manager from shell as root
+
+
+
+
+ Set a name for VM and select Local install media
+
+
+
+
+ Add one cdrom and attach your linux ISO image to it
+
+
+
+
+ Select OS type Linux and it's
+ version choose yours
+
+
+
+
+ Set CPU and RAM amount
+
+
+
+
+ Deselect option Enable storage for this
+ virtual machine
+
+
+
+
+ Select option Customize configuration before
+ install
+
+
+
+
+ Add (or create new) HDD image with Disk bus VirtIO
+ and storage format QCOW2
+
+
+
+
+ Set network device model VirtIO
+
+
+
+
+ Start installation process and open guest vm screen through
+ Console button
+
+
+
-
-
-
- Add (or create new) HDD image with Disk bus VirtIO and storage format QCOW2
-
-
-
- Set network device model VirtIO
-
-
-
- Start installation process and open guest vm screen through
- Console button
-
-
-
-
- Guest VM Linux OS preparation
-
- Ubuntu 12.04 LTS x86_64
-
-
-># for action in update upgrade dist-upgrade;do apt-get -y $action;done
-># apt-get install -y git unzip make cmake gcc python-dev python-pip openssh-server sudo
-
-
- CentOS 6.4 x86_64
-
-
-># rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
-># for action in update upgrade;do yum -y $action; done
-># yum install -y git unzip make cmake gcc python-devel python-pip openssh-server openssh-clients sudo
-
-
- murano-agent installation steps
-
-
+ Guest VM Linux OS preparation
+
+ Ubuntu 12.04 LTS x86_64
+
+
+># apt-get -y update; apt-get -y dist-upgrade
+># apt-get install -y git unzip make cmake gcc \
+ python-dev python-pip openssh-server
+
+
+ CentOS 6.4 x86_64
+
+
+># rpm -ivh http://dl.fedoraproject.org/pub/epel/6/\
+x86_64/epel-release-6-8.noarch.rpm
+># yum -y update; yum -y upgrade
+># yum install -y git unzip make cmake gcc \
+ python-devel python-pip openssh-server openssh-clients sudo
+
+
+ murano-agent installation steps
+
+
># mkdir -p /opt/git
># cd /opt/git
># git clone https://github.com/stackforge/murano-agent.git
># cd murano-agent/python-agent
># git checkout release-0.3
># chmod a+x setup*.sh
+
+# To install Murano Agent on Ubuntu run:
># ./setup.sh install
-or
+
+# To install Murano Agent on CentOS run:
># ./setup-centos.sh install
-
-
- cloud-init installation steps
-
-
-
- Ubuntu
-
-
+
+
+ cloud-init installation steps
+
+
+
+ Ubuntu
+
+
># apt-get install -y cloud-init cloud-initramfs-growroot
-
-
-
-
- CentOS
-
-
+
+
+
+
+ CentOS
+
+
># yum install -y cloud-init
-
-
-
- Ubuntu only
-
-
+
+
+
+ Ubuntu only
+
+
># dpkg-reconfigure cloud-init
-
-
- Mark EC2 data source support, save and exit or add manualy Ec2 to the datasource_list variable in the /etc/cloud/cloud.cfg.d/90_dfkg.cfg
-
-
-
-
-
- Minimal cloud-init configuration options
-
-
-># vi /etc/cloud/cloud.cfg:
- user: ec2-user
- disable_root: 1
- preserve_hostname: False
-
-
-
-
-
- Security setup
-
-
- Create user and make it able to run commands through sudo without password prompt.
-
-
-
- Ubuntu
-
-
+
+
+ Mark EC2 data source support, save and exit or add manualy Ec2 to the datasource_list variable in the /etc/cloud/cloud.cfg.d/90_dfkg.cfg
+
+
+
+
+
+ Minimal cloud-init configuration options
+
+
+># vi /etc/cloud/cloud.cfg
+
+
+user: ec2-user
+disable_root: 1
+preserve_hostname: False
+
+
+
+
+
+ Security setup
+
+
+ Create user and make it able to run commands through sudo without password prompt.
+
+
+
+ Ubuntu
+
+
># useradd -m -G sudo -s /bin/bash ec2-user
># passwd ec2-user
-
-
-
-
- CentOS
-
-
+
+
+
+
+ CentOS
+
+
># useradd -m -G wheel -s /bin/bash ec2-user
># passwd ec2-user
-
-
-
-
- Sudo
-
-
+
+
+
+
+ Sudo
+
+
># echo "ec2-user ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/ec2-user
># chmod 440 /etc/sudoers.d/ec2-user
-
-
-
-
- Disable SSH password-based logins in the /etc/ssh/sshd_config.
-
-
+
+
+
+
+ Disable SSH password-based logins in the /etc/ssh/sshd_config.
+
+
...
GSSAPIAuthentication no
PasswordAuthentication no
PermitRootLogin no
...
-
-
-
-
-
- Network handling
-
-
-
- Ubuntu
-
-
-># rm -rf /etc/udev/rules.d/70-persistent-net.rules
-
-
-
-
- CentOS
- Remove or comment out HWADDR and UUID in /etc/sysconfig/network-scripts/ifcfg-eth*
-
-
-># rm -rf /etc/udev/rules.d/70-persistent-net.rules
-
-
-
-
-
- Shutdown VM
-
-
- Convert the image from RAW to QCOW2 format if you made it as RAW
-
- The image must be converted from RAW format to QCOW2 before being imorted into Glance.
+
+
+
-
-
-
+
+ Network handling
+
+
+
+ Ubuntu
+
+
+># rm -f /etc/udev/rules.d/70-persistent-net.rules
+
+
+
+
+ CentOS
+ Remove or comment out HWADDR and UUID in /etc/sysconfig/network-scripts/ifcfg-eth*
+
+
+># rm -f /etc/udev/rules.d/70-persistent-net.rules
+
+
+
+
+
+ Shutdown VM
+
+
+ Convert the image from RAW to QCOW2 format if you made it as RAW
+
+ The image must be converted from RAW format to QCOW2 before being imported into Glance.
+
+
+
+
># qemu-img convert -O qcow2 /var/lib/libvirt/images/cloud-linux.img \
-/var/lib/libvirt/images/cloud-linux.img.qcow2
-
-
+ /var/lib/libvirt/images/cloud-linux.img.qcow2
+
+
- Upload Image Into Glance
-
- Services deployed by Murano require specially prepared images.
- After images are created they should be registered in Openstack Glance - image operation service.
-
-
-># glance image-create --disk-format=qcow2 --container-format=bare --is-public=true --file=cloud-linux.img --name=cloud-linux
-
-
- Image should be marked with an appropriate type. That could be done through the Horizon UI.
- Navigate to Project -> Environments -> Marked Images -> Mark Image and fill up form:
-
-
-
- Image - cloud-linux
-
-
-
-
- Title - My Cloud-ready Linux
-
-
-
-
- Type - Generic Linux
-
-
-
+ Upload Image Into Glance
+
+ Services deployed by Murano require specially prepared images.
+ After images are created they should be registered in Openstack Glance - image operation service.
+
+
+># glance image-create --disk-format=qcow2 --container-format=bare \
+ --is-public=true --file=cloud-linux.img --name=cloud-linux
+
+
+
+ Image should be marked with an appropriate type. That could be done through the Horizon UI.
+ Navigate to Project -> Environments -> Marked Images -> Mark Image and fill up form:
+
+
+
+ Image - cloud-linux
+
+
+
+
+ Title - My Cloud-ready Linux
+
+
+
+
+ Type - Generic Linux
+
+
+
+
+
+
+ After these steps desired image can be chosen in Murano dashboard and used for services platform.
-
-
- After these steps desired image can be chosen in Murano dashboard and used for services platform.
-
diff --git a/src/administrators-guide/src/docbkx/content/troubleshooting.xml b/src/administrators-guide/src/docbkx/content/troubleshooting.xml
index 2d7370c..0afa28b 100644
--- a/src/administrators-guide/src/docbkx/content/troubleshooting.xml
+++ b/src/administrators-guide/src/docbkx/content/troubleshooting.xml
@@ -6,7 +6,7 @@
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
+ http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
@@ -17,123 +17,177 @@
-->
- Troubleshooting
-
- General Notes
- The following debug sequence should be used when you have no idea about why the
- system isn't working. If you have one, you may skip unnecessary sections.
-
- Set debug options to "True" in the following Murano configuration files:
-
- /etc/murano-api/murano-api.conf
-
-
- /etc/murano-conductor/conductor.conf
-
-
- Stop both murano-api and murano-conductor services. We will start them one by one from the
- console.
-
- murano-api
- First, the murano-api must be started.
-
-
-
-
- Open new console
-
-
- Start murano-api service
- manually># murano-api --config-dir /etc/murano-api 2>&1 \
- > /var/log/murano-api-live.log &
-># tailf /var/log/murano-api-live.log
-
-
- Open dashboard, create and send to deploy some simple
- environment.
-
-
- Open RabbitMQ web console, open your vhost and ensure that queues were
- created and there is at least one message.
-
-
- Check log for errors - there shouldn't be any
-
-
- Keep murano-api service
- running
-
-
-
-
- murano-conductor
- Next to the murano-api the murano-conductor should be started
-
-
-
-
-
- Open new console
-
-
- Start conductor from
- console># muranoconductor --config-dir /etc/murano-conductor \
- > /var/log/murano-conductor-live.log &
-># tailf /var/log/murano-conductor-live.log
-
-
- Check that there is no python exceptions in the log. Some errors like
- 404 are ok, as conductor tries to delete environment that doesn't
- exist
-
-
- Check heat stack status. It should not be in FAILED state. If it is -
- check heat and nova error log to find the cause.
-
-
- Keep murano-conductor service running.
-
-
-
-
- Log Files
- There are various log files which will help you to debug the system.
-
- Murano Log Files
-
-
- /var/log/murano-api.log
-
-
- /var/log/murano-conductor.log
-
-
- /var/log/apache2/errors.log
-
-
- /var/log/httpd/errors.log
-
-
-
- Windows Log Files
-
-
- C:\Program Files (x86)\CloudBase Solutions\logs\log.txt
-
-
- C:\Murano\Agent\log.txt
-
-
- C:\Murano\PowerShell.log
-
-
-
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xsi:schemaLocation="http://docbook.org/ns/docbook http://www.docbook.org/xml/5.0/xsd/docbook.xsd
+ http://www.w3.org/1999/xlink http://www.w3.org/1999/xlink.xsd"
+ version="5.0">
+ Troubleshooting
+
+ General Notes
+
+ The following debug sequence should be used when you have no idea about why the
+ system isn't working. If you have one, you may skip unnecessary sections.
+
+
+
+ Set debug options to "True" in the following Murano configuration files:
+
+
+
+ /etc/murano-api/murano-api.conf
+
+
+
+
+ /etc/murano-conductor/conductor.conf
+
+
+
+
+
+ Stop both murano-api and
+ murano-conductor services.
+ We will start them one by one from the console.
+
+
+ murano-api
+
+ First, the murano-api must be started.
+
+
+
+
+
+
+ Open new console
+
+
+
+
+ Start murano-api service manually
+
+># murano-api --config-dir /etc/murano-api 2>&1 >\
+ /var/log/murano-api-live.log &
+># tailf /var/log/murano-api-live.log
+
+
+
+
+
+ Open dashboard, create and send to deploy some simple environment.
+
+
+
+
+ Open RabbitMQ web console, open your vhost and ensure that queues
+ were created and there is at least one message.
+
+
+
+
+ Check log for errors - there shouldn't be any
+
+
+
+
+ Keep murano-api service running
+
+
+
+
+
+ murano-conductor
+
+ Next to the murano-api the
+ murano-conductor should be started
+
+
+
+
+
+
+ Open new console
+
+
+
+
+ Start conductor from console
+
+># muranoconductor --config-dir /etc/murano-conductor >\
+ /var/log/murano-conductor-live.log &
+># tailf /var/log/murano-conductor-live.log
+
+
+
+
+
+ Check that there is no python exceptions in the log. Some errors like
+ 404 are ok, as conductor tries to delete environment that doesn't exist
+
+
+
+
+ Check heat stack status. It should not be in FAILED state.
+ If it is - check heat and nova error log to find the cause.
+
+
+
+
+ Keep murano-conductor service running.
+
+
+
+
+
+ Log Files
+
+ There are various log files which will help you to debug the system.
+
+
+
+ Murano Log Files
+
+
+
+ /var/log/murano-api.log
+
+
+
+
+ /var/log/murano-conductor.log
+
+
+
+
+ /var/log/apache2/errors.log
+
+
+
+
+ /var/log/httpd/errors.log
+
+
+
+
+
+ Windows Log Files
+
+
+
+ C:\Program Files (x86)\CloudBase Solutions\logs\log.txt
+
+
+
+
+ C:\Murano\Agent\log.txt
+
+
+
+
+ C:\Murano\PowerShell.log
+
+
+
+
-
diff --git a/src/administrators-guide/src/docbkx/content/windows-image-bulder.xml b/src/administrators-guide/src/docbkx/content/windows-image-bulder.xml
index cfebae5..74db787 100644
--- a/src/administrators-guide/src/docbkx/content/windows-image-bulder.xml
+++ b/src/administrators-guide/src/docbkx/content/windows-image-bulder.xml
@@ -6,7 +6,7 @@
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
+ http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
@@ -17,131 +17,116 @@
-->
- Building Windows Image
-
- Murano requires a Windows Image in QCOW2 format to be built and uploaded into Glance.
-
-
- The easiest way to build Windows image for Murano is to build it on the host where your OpenStack is installed.
-
-
- Install Required Packages
-
-
- Please check that hardware virtualization supported and enabled in BIOS.
-
-
-
- The following packages should be installed on any host which will be used to build Windows Image:
-
-
-
- ipxe-qemu
-
-
-
-
- kvm-ipxe
-
-
-
-
- qemu-kvm
-
-
-
-
- munin-libvirt-plugins
-
-
-
-
- python-libvirt
-
-
-
-
- libvirt-bin
-
-
-
-
- libvirt0
-
-
-
-
- munin-libvirt-plugins
-
-
-
-
- python-libvirt
-
-
-
-
- virt-goodies
-
-
-
-
- virt-manager
-
-
-
-
- virt-top
-
-
-
-
- virt-what
-
-
-
-
- virtinst
-
-
-
-
- python
-
-
-
-
-
- On Ubuntu you could install them using the command below:
-
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xsi:schemaLocation="http://docbook.org/ns/docbook http://www.docbook.org/xml/5.0/xsd/docbook.xsd
+ http://www.w3.org/1999/xlink http://www.w3.org/1999/xlink.xsd"
+ version="5.0">
+ Building Windows Image
+
+ Murano requires a Windows Image in QCOW2 format to be built and uploaded into Glance.
+
+
+ The easiest way to build Windows image for Murano is to build it on the host where your OpenStack is installed.
+
+
+ Install Required Packages
+
+
+ Please check that hardware virtualization supported and enabled in BIOS.
+
+
+
+ The following packages should be installed on any host which will be used to build Windows Image:
+
+
+
+ ipxe-qemu
+
+
+
+
+ kvm-ipxe
+
+
+
+
+ qemu-kvm
+
+
+
+
+ python-libvirt
+
+
+
+
+ libvirt-bin
+
+
+
+
+ libvirt0
+
+
+
+
+ virt-goodies
+
+
+
+
+ virt-manager
+
+
+
+
+ virt-top
+
+
+
+
+ virt-what
+
+
+
+
+ virtinst
+
+
+
+
+ python
+
+
+
+
+
+ On Ubuntu you could install them using the command below:
+
># apt-get install ipxe-qemu kvm-ipxe qemu-kvm virt-goodies \
- virtinst virt-manager libvirt0 libvirt-bin \
- munin-libvirt-plugins python python-libvirt \
- python-libxml2 python-minimal python-pycurl \
- python-pyorbit python-requests python-six \
- samba samba-common openssh-server virt-top virt-what
+ virtinst virt-manager libvirt0 libvirt-bin \
+ python python-libvirt \
+ python-libxml2 python-minimal python-pycurl \
+ python-pyorbit python-requests python-six \
+ samba samba-common openssh-server virt-top virt-what
-
-
- Configure Shared Resource
-
- Configure samba based share
-
+
+
+ Configure Shared Resource
+
+ Configure samba based share
+
># mkdir -p /opt/samba/share
># chown -R nobody:nogroup /opt/samba/share
-
-
-
- Configure samba server (/etc/samba/smb.conf)
-
+
+
+
+ Configure samba server (/etc/samba/smb.conf)
+
...
[global]
@@ -158,334 +143,410 @@
guest account = nobody
...
-
-
-
- Restart services
-
+
+
+
+ Restart services
+
># service smbd restart
># service nmbd restart
-
-
-
-
- Prerequisites
- Download the files below and copy them into their places in your ${SHARE_PATH} folder (we usually use /opt/samba/share as ${SHARE_PATH}):
-
- Windows 2012 Server ISO evaluation version
-
- ${SHARE_PATH}/libvirt/images/ws-2012-eval.iso
-
-
-
-
- http://technet.microsoft.com/en-us/evalcenter/hh670538.aspx
-
-
-
-
-
-
- VirtIO drivers for Windows
-
- ${SHARE_PATH}/libvirt/images/virtio-win-0.1-52.iso
-
-
-
-
- http://alt.fedoraproject.org/pub/alt/virtio-win/stable/virtio-win-0.1-52.iso
-
-
-
-
-
-
- CloudBase-Init for Windows
-
- ${SHARE_PATH}/share/files/CloudbaseInitSetup_Beta.msi
-
-
-
-
- http://www.cloudbase.it/downloads/CloudbaseInitSetup_Beta.msi
-
-
-
-
-
-
- Far Manager
-
- ${SHARE_PATH}/share/files/Far30b3367.x64.20130426.msi
-
-
-
-
- http://www.farmanager.com/files/Far30b3525.x64.20130717.msi
-
-
-
-
-
-
- Git client
-
- ${SHARE_PATH}/share/files/Git-1.8.1.2-preview20130201.exe
-
-
-
-
- https://msysgit.googlecode.com/files/Git-1.8.3-preview20130601.exe
-
-
-
-
-
-
- Sysinternals Suite
-
- ${SHARE_PATH}/share/files/SysinternalsSuite.zip
-
-
-
-
- http://download.sysinternals.com/files/SysinternalsSuite.zip
-
-
-
-
-
-
- unzip.exe tool
-
- ${SHARE_PATH}/share/files/unzip.exe
-
-
-
-
- https://www.dropbox.com/sh/zthldcxnp6r4flm/-k1Om_V6XR
-
-
-
-
-
-
- PowerShell v3
-
- ${SHARE_PATH}/share/files/Windows6.1-KB2506143-x64.msu
-
-
-
-
- http://www.microsoft.com/en-us/download/details.aspx?id=34595
-
-
-
-
-
-
- .NET 4.0
-
- ${SHARE_PATH}/share/files/dotNetFx40_Full_x86_x64.exe
-
-
-
-
- http://www.microsoft.com/en-us/download/details.aspx?id=17718
-
-
-
-
-
-
- .NET 4.5
-
- ${SHARE_PATH}/share/files/dotNetFx45_Full_setup.exe
-
-
-
-
- http://www.microsoft.com/en-us/download/details.aspx?id=30653
-
-
-
-
-
-
- Murano Agent
-
- ${SHARE_PATH}/share/files/MuranoAgent.zip
-
-
-
-
- https://www.dropbox.com/sh/zthldcxnp6r4flm/-k1Om_V6XR
-
-
-
-
-
-
-
-
- Additional Software
- This section describes additional software which is required to build an Windows
- Image.
-
- Windows ADK
-
-
- Windows Assessment and Deployment Kit (ADK) for Windows®
- 8 is required to build your own answer files for auto unattended
- Windows installation.
-
-
- You can dowload it from
- http://www.microsoft.com/en-us/download/details.aspx?id=30652.
-
-
- PuTTY
-
- PuTTY is a useful tool to manage your Linux boxes via SSH.
-
-
- You can download it from
- http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html.
-
-
- Windows Server 2012 ISO image
-
- We use the following Windows installation images:
-
- Windows Server 2008 R2
-
- Image Name:
- 7601.17514.101119-1850_x64fre_server_eval_en-us-GRMSXEVAL_EN_DVD.iso
-
-
- URL:
- http://www.microsoft.com/en-us/download/details.aspx?id=11093
-
-
-
-
-
- Windows Server 2012
-
- Image Name:
- 9200.16384.WIN8_RTM.120725-1247_X64FRE_SERVER_EVAL_EN-US-HRM_SSS_X64FREE_EN-US_DV5.iso
-
-
- URL:
- http://technet.microsoft.com/en-US/evalcenter/hh670538.aspx?ocid=&wt.mc_id=TEC_108_1_33
-
-
-
-
-
-
- VirtIO Red Hat drivers ISO image
-
-
-
- Please, choose stable version instead of latest, We’ve got errors with unstable drivers during guest unattended install.
-
-
-
- Download drivers from
- http://alt.fedoraproject.org/pub/alt/virtio-win/stable/
-
-
- Floppy Image With Unattended File
-
-
- Run following commands as root:
-
-
-
-
-
- Create emtpy floppy image in your home folder
-
+
+
+
+
+ Prerequisites
+
+ Download the files below and copy them into their places in your
+ ${SHARE_PATH} folder (we usually use
+ /opt/samba/share as ${SHARE_PATH}):
+
+
+
+ Windows 2012 Server ISO evaluation version
+
+
+
+ ${SHARE_PATH}/libvirt/images/ws-2012-eval.iso
+
+
+
+
+
+ http://technet.microsoft.com/en-us/evalcenter/hh670538.aspx
+
+
+
+
+
+
+
+
+ VirtIO drivers for Windows
+
+
+
+ ${SHARE_PATH}/libvirt/images/virtio-win-0.1-52.iso
+
+
+
+
+
+ http://alt.fedoraproject.org/pub/alt/virtio-win/stable/virtio-win-0.1-52.iso
+
+
+
+
+
+
+
+
+ CloudBase-Init for Windows
+
+
+
+ ${SHARE_PATH}/share/files/CloudbaseInitSetup_Beta.msi
+
+
+
+
+
+ http://www.cloudbase.it/downloads/CloudbaseInitSetup_Beta.msi
+
+
+
+
+
+
+
+
+ Far Manager
+
+
+
+ ${SHARE_PATH}/share/files/Far30b3367.x64.20130426.msi
+
+
+
+
+
+ http://www.farmanager.com/files/Far30b3525.x64.20130717.msi
+
+
+
+
+
+
+
+
+ Git client
+
+
+
+ ${SHARE_PATH}/share/files/Git-1.8.1.2-preview20130201.exe
+
+
+
+
+
+ https://msysgit.googlecode.com/files/Git-1.8.3-preview20130601.exe
+
+
+
+
+
+
+
+
+ Sysinternals Suite
+
+
+
+ ${SHARE_PATH}/share/files/SysinternalsSuite.zip
+
+
+
+
+
+ http://download.sysinternals.com/files/SysinternalsSuite.zip
+
+
+
+
+
+
+
+
+ unzip.exe tool
+
+
+
+ ${SHARE_PATH}/share/files/unzip.exe
+
+
+
+
+
+ https://www.dropbox.com/sh/zthldcxnp6r4flm/-k1Om_V6XR
+
+
+
+
+
+
+
+
+ PowerShell v3
+
+
+
+ ${SHARE_PATH}/share/files/Windows6.1-KB2506143-x64.msu
+
+
+
+
+
+ http://www.microsoft.com/en-us/download/details.aspx?id=34595
+
+
+
+
+
+
+
+
+ .NET 4.0
+
+
+
+ ${SHARE_PATH}/share/files/dotNetFx40_Full_x86_x64.exe
+
+
+
+
+
+ http://www.microsoft.com/en-us/download/details.aspx?id=17718
+
+
+
+
+
+
+
+
+ .NET 4.5
+
+
+
+ ${SHARE_PATH}/share/files/dotNetFx45_Full_setup.exe
+
+
+
+
+
+ http://www.microsoft.com/en-us/download/details.aspx?id=30653
+
+
+
+
+
+
+
+
+ Murano Agent
+
+
+
+ ${SHARE_PATH}/share/files/MuranoAgent.zip
+
+
+
+
+
+ https://www.dropbox.com/sh/zthldcxnp6r4flm/-k1Om_V6XR
+
+
+
+
+
+
+
+
+
+
+ Additional Software
+
+ This section describes additional software which is required to build a Windows Image.
+
+
+ Windows ADK
+
+
+ Windows Assessment and Deployment Kit (ADK) for Windows® 8
+ is required to build your own answer files for auto unattended Windows installation.
+
+
+ You can dowload it from
+ http://www.microsoft.com/en-us/download/details.aspx?id=30652.
+
+
+ PuTTY
+
+
+ PuTTY is a useful tool to manage your Linux boxes via SSH.
+
+
+ You can download it from
+ http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html.
+
+
+ Windows Server 2012 ISO image
+
+
+ We use the following Windows installation images:
+
+
+
+ Windows Server 2008 R2
+
+
+
+ Image Name: 7601.17514.101119-1850_x64fre_server_eval_en-us-GRMSXEVAL_EN_DVD.iso
+
+
+
+
+ URL:
+ http://www.microsoft.com/en-us/download/details.aspx?id=11093
+
+
+
+
+
+
+
+
+ Windows Server 2012
+
+
+
+ Image Name: 9200.16384.WIN8_RTM.120725-1247_X64FRE_SERVER_EVAL_EN-US-HRM_SSS_X64FREE_EN-US_DV5.iso
+
+
+
+
+ URL:
+ http://technet.microsoft.com/en-US/evalcenter/hh670538.aspx?ocid=&wt.mc_id=TEC_108_1_33
+
+
+
+
+
+
+
+
+
+ VirtIO Red Hat drivers ISO image
+
+
+
+ Please, choose stable version instead of latest, We’ve got errors with unstable drivers during guest unattended install.
+
+
+
+ Download drivers from
+ http://alt.fedoraproject.org/pub/alt/virtio-win/stable/
+
+
+ Floppy Image With Unattended File
+
+
+ Run following commands as root:
+
+
+
+
+ Create emtpy floppy image in your home folder
+
># dd bs=512 count=2880 \
- if=/dev/zero of=~/floppy.img \
- mkfs.msdos ~/floppy.img
+ if=/dev/zero of=~/floppy.img \
+ mkfs.msdos ~/floppy.img
-
-
-
- Mount the image to /media/floppy
-
+
+
+
+ Mount the image to /media/floppy
+
># mkdir /media/floppy mount -o loop \
- ~/floppy.img /media/floppy
+ ~/floppy.img /media/floppy
-
-
-
- Download autounattend.xml file from
- https://raw.github.com/stackforge/murano-deployment/master/image-builder/share/files/ws-2012-std/autounattend.xml
-
-
+
+
+
+ Download autounattend.xml file from
+ https://raw.github.com/stackforge/murano-deployment/master/image-builder/share/files/ws-2012-std/autounattend.xml
+
+
># cd ~
># wget https://raw.github.com/stackforge/murano-deployment\
-/master/image-builder/share/files/ws-2012-std/autounattend.xml
+ /master/image-builder/share/files/ws-2012-std/autounattend.xml
-
-
-
- Copy our autounattend.xml to /media/floppy
-
+
+
+
+ Copy our autounattend.xml to
+ /media/floppy
+
># cp ~/autounattend.xml /media/floppy
-
-
-
- Unmount the image
-
+
+
+
+ Unmount the image
+
># umount /media/floppy
-
-
-
-
- Build Windows Image (Automatic Way)
-
-
- Clone murano-deployment repository
+
+
+
+
+ Build Windows Image (Automatic Way)
+
+
+
+ Clone murano-deployment repository
+
># git clone git://github.com/stackforge/murano-deployment.git
-
-
- Change directory to murano-deployment/image-builder folder.
-
-
- Create folder structure for image builder
+
+
+
+ Change directory to murano-deployment/image-builder folder.
+
+
+
+
+ Create folder structure for image builder
+
># make build-root
-
-
- Create shared resource
-
- Add to /etc/samba/smb.conf
-
+
+
+
+ Create shared resource
+
+
+ Add to /etc/samba/smb.conf
+
[image-builder-share]
comment = Image Builder Share
@@ -496,280 +557,334 @@
read only = no
create mask = 0755
-
-
-
- Restart samba services
-
+
+
+
+ Restart samba services
+
># restart smbd && restart nmbd
-
-
-
-
- Test that all required files are in place
+
+
+
+
+
+ Test that all required files are in place
+
># make test-build-files
-
-
- Get list of available images
+
+
+
+ Get list of available images
+
># make
-
-
- Run image build process
+
+
+
+ Run image build process
+
># make ws-2012-std
-
-
- Wait until process finishes
-
-
- The image file ws-2012-std.qcow2 should be
- stored under /opt/image-builder/share/images
- folder.
-
-
-
-
- Build Windows Image (Manual Way)
-
- Please note that the preferred way to build images is to use Automated Build described in the previous chapter.
-
- Get Post-Install Scripts
-
- There are a few scripts which perform all the required post-installation tasks.
-
- Package installation tasks are performed by script named wpi.ps1.
- Download it from
- https://raw.github.com/stackforge/murano-deployment/master/image-builder/share/scripts/ws-2012-std/wpi.ps1
-
-
- There are a few scripts named wpi.ps1, each
- supports only one version of Windows image. The script above is intended to be
- used to create Windows Server 2012 Standard. To build other version of Windows
- please use appropriate script from scripts
- folder.
-
- Clean-up actions to finish image preparation are performed by Start-Sysprep.ps1
- script.
- Download it from
- https://raw.github.com/stackforge/murano-deployment/master/image-builder/share/scripts/ws-2012-std/Start-Sysprep.ps1
-
- These scripts should be copied to the shared resource folder, subfolder Scripts.
-
- Create a VM
-
- This section describes steps required to build an image of Windows Virtual Machine
- which could be used with Murano. There are two possible ways to create it - from
- CLI or using GUI tools. We describe both in this section.
-
-
-
- Run all commands as root.
-
-
-
-
- Way 1: Using CLI Tools
-
- This section describes the required step to launch a VM using CLI tools only.
-
-
-
-
-
- Preallocate disk image
-
+
+
+
+ Wait until process finishes
+
+
+
+
+ The image file ws-2012-std.qcow2 should be stored
+ under /opt/image-builder/share/images folder.
+
+
+
+
+
+ Build Windows Image (Manual Way)
+
+
+ Please note that the preferred way to build images is to use
+ Automated Build described in the previous chapter.
+
+
+
+ Get Post-Install Scripts
+
+
+ There are a few scripts which perform all the required post-installation tasks.
+
+
+ Package installation tasks are performed by script named
+ wpi.ps1.
+
+
+ Download it from
+
+ https://raw.github.com/stackforge/murano-deployment/master/image-builder/share/scripts/ws-2012-std/wpi.ps1
+
+
+
+
+ There are a few scripts named wpi.ps1, each
+ supports only one version of Windows image. The script above is intended to be
+ used to create Windows Server 2012 Standard. To build other version of Windows
+ please use appropriate script from scripts
+ folder.
+
+
+
+ Clean-up actions to finish image preparation are performed by
+ Start-Sysprep.ps1 script.
+
+
+ Download it from
+
+ https://raw.github.com/stackforge/murano-deployment/master/image-builder/share/scripts/ws-2012-std/Start-Sysprep.ps1
+
+
+
+ These scripts should be copied to the shared resource folder, subfolder
+ Scripts.
+
+
+ Create a VM
+
+
+ This section describes steps required to build an image of Windows Virtual Machine
+ which could be used with Murano. There are two possible ways to create it - from
+ CLI or using GUI tools. We describe both in this section.
+
+
+
+ Run all commands as root.
+
+
+
+ Way 1: Using CLI Tools
+
+
+ This section describes the required step to launch a VM using CLI tools only.
+
+
+
+
+
+ Preallocate disk image
+
># qemu-img create -f raw /var/lib/libvirt/images/ws-2012.img 40G
-
-
-
- Start the VM
-
+
+
+
+ Start the VM
+
># virt-install --connect qemu:///system --hvm --name WinServ \
- --ram 2048 --vcpus 2 --cdrom /opt/samba/share/9200.16384.WIN8_RTM\
+ --ram 2048 --vcpus 2 --cdrom /opt/samba/share/9200.16384.WIN8_RTM\
.120725-1247_X64FRE_SERVER_EVAL_EN-US-HRM_SSS_X64FREE_EN-US_DV5.ISO \
- --disk path=/opt/samba/share/virtio-win-0.1-52.iso,device=cdrom \
- --disk path=/opt/samba/share/floppy.img,device=floppy \
- --disk path=/var/lib/libvirt/images/ws-2012.qcow2\
+ --disk path=/opt/samba/share/virtio-win-0.1-52.iso,device=cdrom \
+ --disk path=/opt/samba/share/floppy.img,device=floppy \
+ --disk path=/var/lib/libvirt/images/ws-2012.qcow2\
,format=qcow2,bus=virtio,cache=none \
- --network network=default,model=virtio \
- --memballoon model=virtio --vnc --os-type=windows \
- --os-variant=win2k8 --noautoconsole \
- --accelerate --noapic --keymap=en-us --video=cirrus --force
+ --network network=default,model=virtio \
+ --memballoon model=virtio --vnc --os-type=windows \
+ --os-variant=win2k8 --noautoconsole \
+ --accelerate --noapic --keymap=en-us --video=cirrus --force
-
-
-
-
- Way 2: Using virt-manager UI
-
- A VM also could be lauched via GUI tools like virt-manager.
-
-
-
-
- Launch virt-manager from shell
- as root
-
-
- Set a name for VM and select Local install media
-
-
- Add one cdrom and attach Windows Server ISO image to it
-
-
- Select OS type Windows and it's
- version Windows Server 2008
-
-
-
- Set CPU and RAM amount
-
-
- Deselect option Enable storage for this
- virtual machine
-
-
-
- Select option Customize configuration before
- install
-
-
-
- Add second cdrom for ISO image with virtio drivers
-
-
- Add a floppy drive and attach our floppy image to it
-
-
- Add (or create new) HDD image with Disk bus VirtIO and storage format RAW
-
-
-
- Set network device model VirtIO
-
-
-
- Start installation process and open guest vm screen through
- Console button
-
-
-
-
-
- Convert the image from RAW to QCOW2 format
- The image must be converted from RAW format to QCOW2 before being imorted into
- Glance.
-
-
-
+
+
+
+
+ Way 2: Using virt-manager UI
+
+
+ A VM also could be lauched via GUI tools like virt-manager.
+
+
+
+
+
+ Launch virt-manager from shell as root
+
+
+
+
+ Set a name for VM and select Local install media
+
+
+
+
+ Add one cdrom and attach Windows Server ISO image to it
+
+
+
+
+ Select OS type Windows and it's
+ version Windows Server 2008
+
+
+
+
+ Set CPU and RAM amount
+
+
+
+
+ Deselect option Enable storage for this virtual machine
+
+
+
+
+
+ Select option Customize configuration before install
+
+
+
+
+
+ Add second cdrom for ISO image with virtio drivers
+
+
+
+
+ Add a floppy drive and attach our floppy image to it
+
+
+
+
+ Add (or create new) HDD image with Disk bus
+ VirtIO and storage format
+ RAW
+
+
+
+
+ Set network device model VirtIO
+
+
+
+
+ Start installation process and open guest vm screen through
+ Console button
+
+
+
+
+
+ Convert the image from RAW to QCOW2 format
+
+ The image must be converted from RAW format to QCOW2 before being imorted into Glance.
+
+
+
+
># qemu-img convert -O qcow2 /var/lib/libvirt/images/ws-2012.raw \
- /var/lib/libvirt/images/ws-2012-ref.qcow2
-
-
-
-
-
- Upload Image Into Glance
-
- Services deployed by Murano require specially prepared images, that can be created manually or via automated scripts.
- Please refer to corresponding chapters of this book to create image. After images are created they should be registered in Openstack Glance - image operation service.
-
-
-
-
- Use the glance image-create command to import your disk image to Glance:
+ /var/lib/libvirt/images/ws-2012-ref.qcow2
+
+
+
+
+ Upload Image Into Glance
+
+ Services deployed by Murano require specially prepared images,
+ that can be created manually or via automated scripts.
+ Please refer to corresponding chapters of this book to create image.
+ After images are created they should be registered in Openstack Glance - image operation service.
+
+
+
+
+ Use the glance image-create command to import your disk image to Glance:
>$ glance image-create --name <NAME> \
- --is-public true --disk-format qcow2 \
- --container-format bare \
- --file <IMAGE_FILE> \
- --property <IMAGE_METADATA>
+ --is-public true --disk-format qcow2 \
+ --container-format bare \
+ --file <IMAGE_FILE> \
+ --property <IMAGE_METADATA>
-
-
- Replace the command line arguments to glance image-create with the appropriate values for your environment and disk image:
-
-
-
-
- Replace <NAME> with the name that users will refer to the disk image by.
- E.g. 'ws-2012-std'
-
-
-
-
- Replace <IMAGE_FILE> with the local path to the image file to upload.
- E.g. 'ws-2012-std.qcow2'.
-
-
-
- Replace <IMAGE_METADATA> with the
- following property string
-
-murano_image_info='{"title": "Windows 2012 Standart Edition", "type": "windows.2012"}'
+
+
+ Replace the command line arguments to glance image-create
+ with the appropriate values for your environment and disk image:
+
+
+
+
+ Replace <NAME> with the name that users will refer to the disk image by.
+ E.g. 'ws-2012-std'
+
+
+
+
+ Replace <IMAGE_FILE> with the local path to the image file to upload.
+ E.g. 'ws-2012-std.qcow2'.
+
+
+
+
+ Replace <IMAGE_METADATA> with the following property string
+ (It MUST be one-line string!)
+
+murano_image_info='{"title": "Windows 2012 Standart Edition",
+ "type": "windows.2012"}'
- where
-
- title - user-friendly description of the image
-
-
- type - is a image type, for example 'windows.2012'
-
-
-
-
-
-
-
- To update metadata of the existing image run the command:
+ where
+
+
+
+ title - user-friendly description of the image
+
+
+
+
+ type - an image type, for example 'windows.2012'
+
+
+
+
+
+
+
+
+
+ To update metadata of the existing image run the command:
+
>$ glance image-update <IMAGE-ID> --property <IMAGE_MATADATA>
-
-
-
- Replace <IMAGE-ID> with image id from the previous command output.
-
-
-
- Replace <IMAGE_METADATA> with
- murano_image_info property, e.g.
-
-murano_image_info='{"title": "Windows 2012 Standart Edition", "type": "windows.2012"}'
+
+
+
+ Replace <IMAGE-ID> with image id from the previous command output.
+
+
+
+
+ Replace <IMAGE_METADATA> with murano_image_info property, e.g.
+
+murano_image_info='{"title": "Windows 2012 Std", "type": "windows.2012"}'
-
-
-
-
-
-
- The value of the --property argument named murano_image_info is a JSON
- string. Only double quotes are valid in JSON, so please type
- the string exactly as in the example above.
-
-
- After these steps desired image can be chosen in Murano dashboard and used for services platform.
-
-
+
+
+
+
+
+
+
+ The value of the --property argument named
+ murano_image_info is a JSON string.
+ Only double quotes are valid in JSON, so please type the string exactly as in the example above.
+
+
+
+ After these steps desired image can be chosen in Murano dashboard and used for services platform.
+
+