如何创建一个兼容模型云 Ikoula
pt:Como criar um modelo compatível nuvem Ikoula
es:Cómo crear un modelo compatible nube Ikoula
en:How create a compatible model Cloud Ikoula
ru:Как создать совместимый модель облачных Ikoula
ja:雲 Ikoula の互換性のあるモデルを作成する方法
ar:كيفية إنشاء نموذج متوافق مع "عكلة سحابة"
fr:Comment creer un modele compatible Cloud Ikoula
这篇文章是从由软件进行自动翻译。你可以看到这篇文章的源代码
下面的过程说明如何创建一个模型与云 Ikoula 兼容从从头安装 (从 iso ).
在我们的示例中,我们将创建一个 GNU 图像 /Linux Fedora 22.
登录界面 云 Ikoula :
单击 "模型 " 在左边的菜单 :
选择视图 "ISO " :
单击按钮 "保存 ISO " :
然后填写字段 :
1: 输入你想要为你的形象的名称
2: 输入你的形象的说明
3: 输入 /将 HTTP url 粘贴 (非 https ) 完全符合 iso 文件
4: 选择你的形象将对其可用的云 Ikoula 区域
5: 选中此复选框,如果你想要一个实例,以便能够从您的 iso 启动
6: 您的 ISO,表明系统的类型,如果您的系统和它的版本是在列表中选择,否则选择一种类型 "其他 xxx " 最合适。在我们的例子,Fedora 22 不是我们因此选择的列表中的可用 "其他 Linux (64-位 )".
7: 检查这种情况下,如果你想要可以下载您的 ISO 一旦创建
一旦您的 ISO 注册,等到它地位 "贷款 : 是啊 " :
单击 "实例 " 在左边的菜单 :
单击按钮 "添加实例 " :
选择您的实例部署区域 :
选择 ISO,然后点击 "之后 "
在选项卡上单击 "我 ISOs " 选择您刚刚创建的 iso :
选择您所选择的计算服务,然后点击 "之后 "
由滑动光标来选择磁盘的大小 (GB ) 您要为您的实例,因此为你的未来模型或输入的大小 (GB ) 在该字段中手动,然后确认与按钮 "进入 " 你的键盘,使所选显示在顶部说明 :
单击 "之后 "
继续部署实例的经典阶段 (亲和性、 网络、 实例名称 ) 点击 "之后 " 在每次验证,然后单击 "启动 VM "
一旦已部署您的实例,请单击名称 (从实例菜单 ) :
单击按钮 "请参阅控制台 " (你看看你的 ISO 映像附加到您的实例的细节的这注 ) :
将打开一个新的弹出浏览器窗口 (如果这不是案件的检查,你不阻止它的云 Ikoula 界面弹出窗口 ).此窗口是实际上 web GUI 控制台类型 VNC /KVM (écran/clavier/souris) 您将允许您在您的实例的磁盘上安装系统的实例 :
继续您的系统分区和你想要的配置与安装 (如果系统提示您安装 SSH 包 )但是请注意,键盘不是类型 qwerty 键盘的 (注意因此定义的密码 ).
在安装时它被问到你结束单击重新启动时,停止您的实例分离 ISO
一旦停止您的实例,请单击您的实例,然后按钮的名称 "分离的 ISO 镜像 " :
一次 iso 脱离您的实例,您可以再次启动它,在你刚安装的磁盘的系统上启动 (ROOTDISK ) 答案是后者。
单击按钮 "请参阅控制台 " 看到你引导的系统 :
用 SSH 连接到您的实例 (您必须具有创建防火墙规则和重定向端口的如果您的实例是在区 /先进的网络 或如果它处于带基本,没有规则 iptables 实例系统上的安全组的入站的规则 ) 完成的系统以使它与云 Ikoula 兼容的配置。
在一个虚拟的背景下,我们依靠使用 LVM 分区 (根和交换逻辑卷 ) 为了方便地调整大小调整大小或添加虚拟磁盘分区 :
[root@Fedora22x64 ~]# fdisk -l
Disque /dev/xvda : 50 GiB, 53687091200 octets, 104857600 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Type d'étiquette de disque : dos
Identifiant de disque : 0xa1c87ad9
Périphérique Amorçage Début Fin Secteurs Taille Id Type
/dev/xvda1 2048 4095 2048 1M 83 Linux
/dev/xvda2 * 4096 1955839 1951744 953M 83 Linux
/dev/xvda3 1955840 104857599 102901760 49,1G 8e LVM Linux
Disque /dev/mapper/vg01-root : 48,1 GiB, 51610910720 octets, 100802560 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Disque /dev/mapper/vg01-swap : 1 GiB, 1073741824 octets, 2097152 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
[root@Fedora22x64 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/xvda3 vg01 lvm2 a-- 49,07g 0
[root@Fedora22x64 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
vg01 1 2 0 wz--n- 49,07g 0
[root@Fedora22x64 ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root vg01 -wi-ao---- 48,07g
swap vg01 -wi-ao---- 1,00g
如果需要更新系统 (适应您软件包管理器 ) :
[root@Fedora22x64 ~]# dnf upgrade
请安装的最低的软件包可以用来设置在执行命令 "UserData " 在部署期间 例如与 您的模板 : Vim,rsync,卷曲,wget,云 init,傀儡,因素 :
[root@Fedora22x64 system]# dnf list installed vim-enhanced rsync curl wget cloud-init puppet facter
Vérification de l'expiration des métadonnées effectuée il y a 0:30:24 sur Tue Oct 6 08:49:42 2015.
Paquets installés
cloud-init.x86_64 0.7.6-3.fc22 @System
curl.x86_64 7.40.0-7.fc22 @System
facter.x86_64 2.4.1-1.fc22 @System
puppet.noarch 4.1.0-5.fc22 @System
rsync.x86_64 3.1.1-6.fc22 @System
vim-enhanced.x86_64 2:7.4.827-1.fc22 @System
wget.x86_64 1.16.3-1.fc22 @System
- 添加行 "datasource_list : ['CloudStack']" 在配置文件的开头 /etc/cloud/cloud.cfg (如果您已经安装云 init,如上所示 ) :
[root@fedora22 ~]# head -n1 /etc/cloud/cloud.cfg
datasource_list: ['CloudStack']
检索包含在我们的镜子 Xen 工具存档 :
[root@Fedora22x64 ~]# wget http://mirror03.ikoula.com/pub/citrix/xentools/linux65.zip
--2015-10-05 17:28:10-- http://mirror03.ikoula.com/pub/citrix/xentools/linux65.zip
Résolution de mirror03.ikoula.com (mirror03.ikoula.com)… 80.93.XX.XX, 2a00:c70:1:80:93:XX:XX:1
Connexion à mirror03.ikoula.com (mirror03.ikoula.com)|80.93.XX.XX|:80… connecté.
requête HTTP transmise, en attente de la réponse… 200 OK
Taille : 60474580 (58M) [application/zip]
Sauvegarde en : « linux65.zip »
linux65.zip 100%[===================================================================================================>] 57,67M 1,14MB/s ds 50s
2015-10-05 17:29:00 (1,14 MB/s) — « linux65.zip » sauvegardé [60474580/60474580]
将它解压缩到当前目录中 (需要解压缩安装 ) :
[root@Fedora22x64 ~]# unzip linux65.zip
Archive: linux65.zip
creating: linux65/
creating: linux65/rhel4x/
inflating: linux65/rhel4x/kernel-xenU-2.6.9-103.EL.xs6.5.0.68.i686.rpm
inflating: linux65/rhel4x/mkinitrd-4.2.1.10-1.1.i386.rpm
inflating: linux65/rhel4x/versions
inflating: linux65/xe-linux-distribution
inflating: linux65/xe-guest-utilities_6.5.0-1400_amd64.deb
inflating: linux65/xe-guest-utilities_6.5.0-1400_i386.deb
inflating: linux65/xe-guest-utilities-6.5.0-1400.i386.rpm
inflating: linux65/xe-guest-utilities-6.5.0-1400.x86_64.rpm
inflating: linux65/xe-guest-utilities-xenstore-6.5.0-1400.i386.rpm
inflating: linux65/install.sh
inflating: linux65/xe-guest-utilities-xenstore-6.5.0-1400.x86_64.rpm
creating: linux65/debian-lenny/
inflating: linux65/debian-lenny/linux-image-2.6.32-5-amd64_2.6.32-43.xs6.5.0.299_amd64.deb
inflating: linux65/debian-lenny/linux-image-2.6-xen_2.6.32+0.xs299_i386.deb
inflating: linux65/debian-lenny/linux-image-2.6.32-5-686-bigmem_2.6.32-43.xs6.5.0.299_i386.deb
inflating: linux65/debian-lenny/linux-image-2.6-xen_2.6.32+0.xs299_amd64.deb
inflating: linux65/debian-lenny/versions
inflating: linux65/versions.rpm
inflating: linux65/README.txt
inflating: linux65/versions.deb
[root@Fedora22x64 ~]#
运行安装 Xen 工具 :
[root@Fedora22x64 ~]# ./linux65/install.sh
Detected `Fedora release 22 (Twenty Two)' (fedora version 22).
The following changes will be made to this Virtual Machine:
* update arp_notify sysctl.conf.
* packages to be installed/upgraded:
- xe-guest-utilities-6.5.0-1400.x86_64.rpm
- xe-guest-utilities-xenstore-6.5.0-1400.x86_64.rpm
Continue? [y/n] y
attention : Génération d'index manquant(s) 4, merci d'attendre...
Préparation... ################################# [100%]
Mise à jour / installation...
1:xe-guest-utilities-xenstore-6.5.0################################# [ 50%]
2:xe-guest-utilities-6.5.0-1400 ################################# [100%]
You should now reboot this Virtual Machine.
重新启动您的实例作为这提示 :
[root@Fedora22x64 ~]# reboot
Vérification :
[root@Fedora22x64 ~]# systemctl status xe-linux-distribution.service
● xe-linux-distribution.service - LSB: XenServer Virtual Machine daemon providing host integration services
Loaded: loaded (/etc/rc.d/init.d/xe-linux-distribution)
Active: active (running) since lun. 2015-10-05 19:11:06 CEST; 13h ago
Docs: man:systemd-sysv-generator(8)
Process: 586 ExecStart=/etc/rc.d/init.d/xe-linux-distribution start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/xe-linux-distribution.service
├─ 631 /bin/bash /usr/sbin/xe-daemon -p /var/run/xe-daemon.pid
└─2725 sleep 60
oct. 05 19:11:05 Fedora22x64 systemd[1]: Starting LSB: XenServer Virtual Machine daemon providing host integration services...
oct. 05 19:11:06 Fedora22x64 systemd[1]: Started LSB: XenServer Virtual Machine daemon providing host integration services.
oct. 05 19:11:06 Fedora22x64 xe-linux-distribution[586]: Mounting xenfs on /proc/xen: [ OK ]
oct. 05 19:11:06 Fedora22x64 xe-linux-distribution[586]: Detecting Linux distribution version: [ OK ]
oct. 05 19:11:06 Fedora22x64 xe-linux-distribution[586]: Starting xe daemon: [ OK ]
您可以删除安装文件 :
[root@Fedora22x64 ~]# rm -rf linux65*
[root@Fedora22x64 ~]#
我们添加中的以下行 /etc/sysctl.conf (它将禁用 API 6 并应用一些优化 ):
#Disable IPv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.eth0.disable_ipv6 = 1
#Disable Swap
vm.swappiness = 0
#Improve memory management
vm.dirty_ratio = 60
vm.dirty_background_ratio = 2
#No overcommitment of available memory
vm.overcommit_ratio = 0
vm.overcommit_memory = 0
#Set maximum amount of memory allocated to shm to 256MB
kernel.shmmax = 268435456
kernel.shmall = 268435456
#Keep at least 64MB of free RAM space available
vm.min_free_kbytes = 65535
然后我们执行命令 "sysctl -p" :
[root@Fedora22x64 init.d]# sysctl -p
net.ipv4.conf.all.arp_notify = 1
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.eth0.disable_ipv6 = 1
vm.swappiness = 0
vm.dirty_ratio = 60
vm.dirty_background_ratio = 2
vm.overcommit_ratio = 0
vm.overcommit_memory = 0
kernel.shmmax = 268435456
kernel.shmall = 268435456
vm.min_free_kbytes = 65535
它修改 SELinux 政策通过它从 "执行 " à "纵容 " :
[root@Fedora22x64 ~]# sed -i 's/SELINUX=enforcing/SELINUX=permissive/g' /etc/sysconfig/selinux
[root@Fedora22x64 ~]# setenforce Permissive
[root@Fedora22x64 ~]# sestatus
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: permissive
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 29
如果您的系统具有的起源防火墙规则,请 stoppper 并在我们的案例中禁用它, :
[root@Fedora22x64 ~]# systemctl stop firewalld.service
[root@Fedora22x64 ~]# systemctl disable firewalld.service
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.
它会验证它具有更多的负责任的规则 :
[root@Fedora22x64 ~]# iptables -vnL
Chain INPUT (policy ACCEPT 34 packets, 2240 bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 32 packets, 3568 bytes)
pkts bytes target prot opt in out source destination
我们现在安装云客人脚本上早就基于更改密码、 主机名、 userdata 的 SSH 密钥的功能 :
- 首先,检索包含我们的镜子上的脚本存档 (编辑 fedora 22 由 centos 7debian 8 或 ubuntu 1404 在下面的 url ) :
[root@Fedora22x64 ~]# wget http://mirror02.ikoula.com/priv/citrix/scripts/systemd/fedora22/cloud-set-guest-scripts.tar.gz
--2015-10-06 09:57:13-- http://mirror02.ikoula.com/priv/citrix/scripts/systemd/fedora22/cloud-set-guest-scripts.tar.gz
Résolution de mirror02.ikoula.com (mirror02.ikoula.com)… 80.93.XX.XX, 2a00:c70:1:80:93:XX:XX:1
Connexion à mirror02.ikoula.com (mirror02.ikoula.com)|80.93.XX.XX|:80… connecté.
requête HTTP transmise, en attente de la réponse… 200 OK
Taille : 2965 (2,9K) [application/x-gzip]
Sauvegarde en : « cloud-set-guest-scripts.tar.gz »
cloud-set-guest-scripts.tar.gz 100%[===================================================================================================>] 2,90K --.-KB/s ds 0s
2015-10-06 09:57:13 (279 MB/s) — « cloud-set-guest-scripts.tar.gz » sauvegardé [2965/2965]
- 提取的内容 :
[root@Fedora22x64 ~]# tar xvzf cloud-set-guest-scripts.tar.gz
cloud-set-guest-hostname
cloud-set-guest-hostname.service
cloud-set-guest-password
cloud-set-guest-password.service
cloud-set-guest-sshkey
cloud-set-guest-sshkey.service
cloud-set-guest-userdata
cloud-set-guest-userdata.service
readme.txt
- 在中移动文件.service /lib/systemd/system/ :
[root@Fedora22x64 ~]# mv cloud-set-guest-*.service /lib/systemd/system/
[root@Fedora22x64 ~]#
- 在中移动其他文件 /etc/init.d/
[root@Fedora22x64 ~]# rm -f cloud-set-guest-scripts.tar.gz
[root@Fedora22x64 ~]# mv cloud-set-guest-* /etc/init.d/
[root@Fedora22x64 ~]#
- 它使我们的服务单位 :
[root@Fedora22x64 ~]# systemctl enable cloud-set-guest-hostname.service
Created symlink from /etc/systemd/system/multi-user.target.wants/cloud-set-guest-hostname.service to /usr/lib/systemd/system/cloud-set-guest-hostname.service.
[root@Fedora22x64 ~]# systemctl enable cloud-set-guest-password.service
Created symlink from /etc/systemd/system/multi-user.target.wants/cloud-set-guest-password.service to /usr/lib/systemd/system/cloud-set-guest-password.service.
[root@Fedora22x64 ~]# systemctl enable cloud-set-guest-sshkey.service
Created symlink from /etc/systemd/system/multi-user.target.wants/cloud-set-guest-sshkey.service to /usr/lib/systemd/system/cloud-set-guest-sshkey.service.
[root@Fedora22x64 ~]# systemctl enable cloud-set-guest-userdata.service
Created symlink from /etc/systemd/system/multi-user.target.wants/cloud-set-guest-userdata.service to /usr/lib/systemd/system/cloud-set-guest-userdata.service.
[root@Fedora22x64 ~]# systemctl -l | grep cloud-set
cloud-set-guest-hostname.service loaded active exited CloudStack Set Guest Hostname
cloud-set-guest-password.service loaded active exited CloudStack Set Guest Password Reset
cloud-set-guest-sshkey.service loaded active exited CloudStack Set Guest Ssh Key
cloud-set-guest-userdata.service loaded active exited CloudStack Set Guest Userdata
- 我们清除 DHCP 租约文件 (要适应需要的文件的路径和名称 ) :
[root@fedora22 ~]# > /var/lib/dhclient/dhclient.leases
- 关于清除主日志文件和命令历史记录 :
[root@Fedora22x64 ~]# list=`find /var/log/ -type f`
[root@Fedora22x64 ~]# for arg in $list ; do > $arg ; done
[root@Fedora22x64 ~]# list=`find /var/log/ -name "*.gz"`
[root@Fedora22x64 ~]# for arg in $list ; do /bin/rm $arg ; done
[root@Fedora22x64 ~]# > .bash_history
[root@Fedora22x64 ~]# history -c && shutdown -h now && exit
- 它创建的模型我们退出实例 :
在云 Ikoula 界面上,进去 "实例 " 然后点击你的实例的名称
单击 "请参阅卷 " :
单击您的卷 ROOTDISK 名称 :
单击按钮 "创建一个模板 " :
给的名称和你想要向您的模型,说明选择相同类型的骨比您的实例,检查 "启用密码 " et "动态调整大小 " (如果您已经分别设置云组客人密码脚本并安装 xentools ) :
一次完成模板的创建 :
你可以找到它在 "模型 " :
你的模板,单击选项卡的名称 "区域 " 要验证其状态是否准备好了 (贷款 : 是啊 ) :
现在可以将新实例部署与您的兼容模型云 Ikoula (您将需要在选项卡中选择您的型号 "我的模板 " 实例部署向导) :
<comments />
<comments />
<comments />
<comments />
<comments />
开启评论自动刷新