cloudstack基础知识

cloudstack中文站点

使用服务器日志

为了方便诊断系统,CloudStack 管理服务器在目录/var/log/cloud/management/下记录了所有网站、中间层和数据库的活动。CloudStack 会记录各种出错信息。我们推荐使用下述命令从管理服务器日志中寻找有问题的输出日志:
注:当复制和粘贴命令时,请确保没有多余的换行符,因为一些文档查看器可能会在复制时加上换行符。

grep -i -E 'exception|unable|fail|invalid|leak|warn|error' /var/log/cloudstack/management/management-server.log

CloudStack处理请求时会生成一个任务ID。如果您发现了日志中的某个错误,然后想调试该问题,您可以在管理服务器日志中grep这个任务ID。例如,假设您发现了以下的ERROR信息:

2010-10-04 13:49:32,595 ERROR [cloud.vm.UserVmManagerImpl] (Job-Executor-11:job-1076) Unable to find any host for [User|i-8-42-VM-untagged]
注意到任务ID是1076。你可以追踪返回事件的相近任务1076按照以下grep:

grep "job-1076)" management-server.log
CloudStack代理服务器在 /var/log/cloudstack/agent/记录了它的活动。

恢复丢失的虚拟路由器

症状
虚拟路由器是运行着的,但主机失去连接。虚拟路由器不再按期望工作。

原因
虚拟路由器丢失或宕机。

解决方案
如果您确定虚拟路由器宕机了,或不再正常工作,请销毁它。您必须再建一个新的,此时备份路由器应保持运行(假定在使用冗余路由器配置的情况下)。

强制停止虚拟路由器。请使用带参数forced=true的stopRouter API执行该步。
在销毁虚拟路由器之前,请确保备份路由器正常运行。否则用户的网络连接将中断。
使用destroyRouter API销毁该虚拟路由器。
使用restartNetwork API(参数cleanup=false)重建丢失的虚拟路由器。关于冗余虚拟路由器的配置,请参考创建新的网络方案。

关于更多的API语法信息,参见API参考http://cloudstack.apache.org/docs/api/

配置虚拟路由

你可以设置以下内容:

IP地址范围
支持的网络服务
由虚拟路由为网络服务提供的默认域名
网关IP地址
CloudStack多久从虚拟路由器获取一次网络使用数据。如果你想搜集虚拟路由器的流量计量数据,设置全局变量router.stats.interval。如果你不使用虚拟路由器收集网络使用数据,设置该值为0

在VM重启时重设VM的root盘

你可以指定你想要放弃的root磁盘和创建一个新的,并且无论何时在VM重启时都使用新的。每次启动时都是一个全新的VM并且桌面不需要保存它的状态,出于安全环境考虑这非常有用。VM的IP地址在这个操作期间不会改变。

要启用在VM重启时重置root磁盘:
当创建一个新的服务方案时,设置isVolatile这个参数为True。从这个服务方案创建的VMs一旦重启,它们的磁盘就会重置。请参阅 “创建新的计算方案”。

存储方案是可以通过修改数据库改变的

MariaDB [cloud]> select * from disk_offering\G;
*************************** 1. row ***************************id: 1domain_id: NULLname: Small Instanceuuid: 46b92083-ff84-4825-ad07-0d2bcde4da4cdisplay_text: Small Instancedisk_size: 0type: Servicetags: NULLrecreatable: 0
use_local_storage: 0unique_name: Cloud.Com-Small Instancesystem_use: 0customized: 1removed: NULLcreated: 2018-03-08 12:22:39sort_key: 0display_offering: 1customized_iops: NULLmin_iops: NULLmax_iops: NULLbytes_read_rate: NULLbytes_write_rate: NULLiops_read_rate: NULLiops_write_rate: NULLstate: Activehv_ss_reserve: NULLcache_mode: NULL
provisioning_type: thin

推荐使用cpu超配,不支持内存超配

使用超配可以实现cpu资源争抢功能

模板相当于虚拟机的重用配置

模板中,主机名管理

默认情况下CentOS在启动的时候配置主机名。但是,Ubuntu却没有此功能,对于Ubuntu,安装时使用下面步骤。

Ubuntu

The hostname of a Templated VM is set by a custom script in /etc/dhcp/dhclient-exit-hooks.d, this script first checks if the current hostname is localhost, if true, it will get the host-name, domain-name and fixed-ip from the DHCP lease file and use those values to set the hostname and append the /etc/hosts file for local hostname resolution. Once this script, or a user has changed the hostname from localhost, it will no longer adjust system files regardless of its new hostname. The script also recreates openssh-server keys, which should have been deleted before templating (shown below). Save the following script to /etc/dhcp/dhclient-exit-hooks.d/sethostname, and adjust the permissions.

#!/bin/sh
# dhclient change hostname script for Ubuntu
oldhostname=$(hostname -s)
if [ $oldhostname = 'localhost' ]
thensleep 10 # Wait for configuration to be written to diskhostname=$(cat /var/lib/dhcp/dhclient.eth0.leases  |  awk ' /host-name/ { host = $3 }  END { printf host } ' | sed     's/[";]//g' )fqdn="$hostname.$(cat /var/lib/dhcp/dhclient.eth0.leases  |  awk ' /domain-name/ { domain = $3 }  END { printf     domain } ' | sed 's/[";]//g')"ip=$(cat /var/lib/dhcp/dhclient.eth0.leases  |  awk ' /fixed-address/ { lease = $2 }  END { printf lease } ' | sed     's/[";]//g')echo "cloudstack-hostname: Hostname _localhost_ detected. Changing hostname and adding hosts."printf " Hostname: $hostname\n FQDN: $fqdn\n IP: $ip"# Update /etc/hostsawk -v i="$ip" -v f="$fqdn" -v h="$hostname" "/^127/{x=1} !/^127/ && x { x=0; print i,f,h; } { print $0; }" /etc/hosts > /etc/hosts.dhcp.tmpmv /etc/hosts /etc/hosts.dhcp.bakmv /etc/hosts.dhcp.tmp /etc/hosts# Rename Hostecho $hostname > /etc/hostnamehostname -b -F /etc/hostnameecho $hostname > /proc/sys/kernel/hostname# Recreate SSH2export DEBIAN_FRONTEND=noninteractivedpkg-reconfigure openssh-server
fi
### End of Script ###chmod 774  /etc/dhcp/dhclient-exit-hooks.d/sethostname

警告
当你准备好做你的主模板的时候请运行下列步骤。如果主模板在这些步骤期间重启了,那么你要重新运行所有的步骤。在这个过程的最后,主模板应该关机并且将其创建为模板,然后再部署。

模板中,密码管理
Linux系统安装
使用一下步骤开始Linux系统的安装:

下载cloud-set-guest-password脚本文件:

https://download.cloudstack.org/templates/4.2/bindir/cloud-set-guest-password.in
Rename the file:

mv cloud-set-guest-password.in cloud-set-guest-password
拷贝本文件到 /etc/init.d 。

在某些linux发行版拷贝此文件到 /etc/rc.d/init.d。

执行以下命令使脚本可执行:

chmod +x /etc/init.d/cloud-set-guest-password
根据不同的Linux发行版,选择适当的步骤继续。

在Fedora,CentOS/RHEL和Debian上运行:

chkconfig --add cloud-set-guest-password

VM快照的限制

如果一个VM存储了一些快照,你就不能给他附加新卷或删除存在的卷。如果你更改了VM的卷,他将不能通过之前卷结构下所做快照来进行恢复。如果你想给这样一个VM附加卷,请先删除快照。
如果你更改了VM的服务方案,那么包含了数据卷和内存的VM快照就不能保留了,任何已有的此类型的VM快照都将被丢弃。
你不能同时对VM在做卷快照和VM快照。
你只能使用CloudStack来创建其管理的主机上的VM快照。你在hypervisor上直接创建的任何快照都不能被CloudStack识别。

配置VM快照

vmsnapshots.max

云中虚拟机能够保存快照的最大数。 (number of VMs) * vmsnapshots.max是云中VM快照的总共可能数量。如果任何一个VM的快照数达到了最大值,那么快照删除任务会把最老的快照删掉。

vmsnapshot.create.wait

在提示失败和发生错误之前快照工作为了成功的做快照而等待的秒数。

配置动态CPU和RAM伸缩

要配置此功能,请使用下面的全局配置变量:

enable.dynamic.scale.vm:设置为True以启用此功能。默认情况下,此功能是被关闭的。
scale.retry:伸缩操作的重试次数。默认为2。
如果动态伸缩CPU和RAM
要修改虚拟机的CPU和/或RAM,你必须更改VM的计算方案为你想要的。你可以按照上文中所述的同样的步骤 “Changing the Service Offering for a VM”,但是要跳过停止虚拟机的步骤。当然,你可能必须先创建一个新的计算方案。

当你提交一个动态伸缩的请求的时候,当前主机可能会扩展资源。如果主机没有足够的资源,VM会被在线迁移至同一群集中的其他主机。如果群集中没有能满足CPU和RAM条件的主机,那么扩展操作会失败。不用担心,VM会往常一样继续运行。

修改系统 VM 的默系统方案

你可认为的修改一个特殊系统 VM 的系统方案。此外,作为一个 CloudStack 管理员,你也可以改变系统 VM 使用的默认系统方案。

创建一个新的系统方案

获取更多信息,查看 创建一个新的系统服务方案

备份数据库:

mysqldump -u root -p cloud | bzip2 > cloud_backup.sql.bz2
打开一个 MySQL 提示:

mysql -u cloud -p cloud
在 cloud 数据库运行以下查询。

在磁盘 _offering 表,验证原始默认方案和你想默认使用的新方案。

记录新方案的 ID

select id,name,unique_name,type from disk_offering;
对于原始默认方案,设置 _name 唯一值为 NULL

# update disk_offering set unique_name = NULL where id = 10;
确保你使用正确的 ID 值

对于你想使用默认值的新方案,参照以下进行唯一 _name 值设置:

对于默认控制台代理虚拟机 ( CPVM )方案, 设置唯一 _name 为 ‘ Cloud.com-ConsoleProxy ‘。对于默认辅助存储虚拟机 ( SSVM ) 方案, 设置唯一 _name 为 ‘ Cloud.com-SecondaryStorage ‘。例如:

update disk_offering set unique_name = 'Cloud.com-ConsoleProxy' where id = 16;
重启 CloudStack 管理器服务器。因为默认方案启动时被加载到内存,要求重启。

service cloudstack-management restart
销毁存在的 CPVM 或 SSVM 方案,并等待它们重建。 通过新的系统方案配置新的 CPVM 或 SSVM

转载于:https://www.cnblogs.com/gordonchang/p/9016237.html

cloudstack基础知识相关推荐

  1. Ceph: ceph基础知识

    ceph基础知识 一.基础概念 ceph官方文档 http://docs.ceph.org.cn/ ceph中文开源社区 http://ceph.org.cn/ 1.概述 Ceph是可靠的.可扩展的. ...

  2. 嵌入式Linux的OTA更新,基础知识和实现

    嵌入式Linux的OTA更新,基础知识和实现 OTA updates for Embedded Linux, Fundamentals and implementation 更新的需要 一旦嵌入式Li ...

  3. 计算机基础知识第十讲,计算机文化基础(第十讲)学习笔记

    计算机文化基础(第十讲)学习笔记 采样和量化PictureElement Pixel(像素)(链接: 采样的实质就是要用多少点(这个点我们叫像素)来描述一张图像,比如,一幅420x570的图像,就表示 ...

  4. 嵌入式linux编程,嵌入式Linux学习笔记 - 嵌入式Linux基础知识和开发环境的构建_Linux编程_Linux公社-Linux系统门户网站...

    注:所有内容基于友善之臂Mini2440开发板 一.嵌入式Linux开发环境的构建 嵌入式开发一般分为三个步骤: 1.编译bootloader,烧到开发板 2.编译嵌入式Linux内核,烧到开发板 3 ...

  5. 《计算机网络应用基础》模拟试卷(六),《计算机与网络应用基础知识1》模拟试卷...

    <计算机与网络应用基础知识1>模拟试卷 (4页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 <计算机与网络应用基础知识1& ...

  6. python向量计算库教程_NumPy库入门教程:基础知识总结

    原标题:NumPy库入门教程:基础知识总结 视学算法 | 作者 知乎专栏 | 来源 numpy可以说是 Python运用于人工智能和科学计算的一个重要基础,近段时间恰好学习了numpy,pandas, ...

  7. python常用变量名_python基础知识整理

    Python Python开发 Python语言 python基础知识整理 序言:本文简单介绍python基础知识的一些重要知识点,用于总结复习,每个知识点的具体用法会在后面的博客中一一补充程序: 一 ...

  8. 计算机基础知识掌握欠缺,《计算机基础知识》实验教学改革探讨.pdf

    <计算机基础知识>实验教学改革探讨.pdf Science& TechnologyVision 科 技 视 界 科技 探·索·争鸣 计<算机基础知识>实验教学改革探讨 ...

  9. python计算wav的语谱图_Python实现电脑录音(含音频基础知识讲解)

    前言 今天开始进入近期系列文章的第一篇,如何用 Python 来实现录音功能. 在开始"造轮子"之前,个人一直强调一个观点,如果有些东西已经有了,不妨直接去 github 上搜,用 ...

  10. 计算机wrod初级考试题及答案,计算机基础知识+Word基础知识+Excel基础知识试题答案解析.doc...

    文档介绍: 计算机基础知识+ Word基础知识+ Excel基础知识 第一部分 一.单项选择题 1.世界上第一台电子数字计算机取名为(    ). A.UNIVAC    B.EDSAC    C.E ...

最新文章

  1. 对比SQL Server和Oracle的关键参数
  2. DAHDI与Zaptel
  3. linux如何建立隐藏目录,【Linux】文件与目录的默认权限与隐藏权限
  4. java基础知识 多线程
  5. html使用最ie高版本,从html,css,javascript三方面谈谈“浏览器兼容性”的问题
  6. 由浅入深CAS,小白也能与BAT面试官对线
  7. IIS W3C日志记录字段和HTTP状态代码的说明
  8. 在spring boot中打印mybaits执行的sql
  9. h5 兑换商品 页面模版_H5商城静态页面(模板)
  10. 使用matlab进行简单图像处理
  11. 设置多个dns_迅雷:要想下载速度快 请避免使用国外公共DNS服务
  12. linux系统网络老掉线,Linux使用ADSL上网时经常掉线
  13. iOS 17 开放侧载,微信双开要来了?
  14. # 北京市职业技能提升管理平台#大数据#
  15. PHP+Mysql—留言管理系统网站(前端+后端、整套源码)
  16. Clone Graph问题及解法
  17. 遍历报错: Uncaught ReferenceError: key is not defined
  18. 将word文档中所有文本框中的内容转换成普通段落
  19. IDA官网发布的每周技巧8----以批处理模式在后台运行IDA
  20. c语言常用滤波算法,10种常用滤波算法C实现.c

热门文章

  1. odoo 对 many2many one2many的操作
  2. 新年的第一天学习状态感慨
  3. JavaSE 学习参考:枚举类型
  4. 如何用阿里云服务器建立一个wordpress网站
  5. Description Resource Path Location Type The superclass javax.servlet.http.HttpServlet was not foun
  6. Centos单网卡多IP的配置
  7. QL Server 2008新特性:FILESTREAM
  8. DEDECMS 另类***
  9. checkbox 在jsp中的使用
  10. 网址URL特殊字符编码