云计算底层技术奥秘、磁盘技术揭秘、虚拟化及云概述

虚拟化是什么?

- 虚拟化是一种技术,顾名思义,就是将不可拆分的实体资源变成可以自由划分的逻辑资源,从而实现资源的整合、隔离、再分配,云计算就是利用了虚拟化技术的这个特点。

云计算是什么?

- 云计算是一种服务模式(IAAS),其思想就是把个种资源整合起来,然后租给有需要的用户,其中的资源包括处理器(cpu)、内存、存储、网络和其他基本的计算资源。通常我们通过虚拟化手段把这些资源分割打包提供给用户使用。

 构建虚拟化平台:

 1. 安装虚拟化平台软件包

验证是否支持虚拟化:

~]# grep -Po "vmx|svm" /proc/cpuinfo

~]# lsmod |grep kvm

 2. 创建网桥

网桥文件官网手册: https://libvirt.org/docs.html

 

 虚拟机磁盘:

 3. 创建带后端盘的文件

镜像文件需要事先准备:

 4. 虚拟机配置文件

 官方手册:libvirt: Documentation

 5. 创建vmhost虚拟机

 

login as 'cirros' user. default password: 'gocubsgo'. use 'sudo' for root.

 6. 常用管理命令

补充: 

练习:

编写一个脚本用来管理虚拟机,可以完成虚拟机的批量创建、批量删除,自定义虚拟机名称等功能,现有的模板虚拟机信息如下:

  • 配置文件模板:/var/lib/libvirt/images/node_base.xml
  • 后端盘模板: /var/lib/libvirt/images/node_base.qcow2 

参考答案:

#!/bin/bash
CONF_DIR="/etc/libvirt/qemu"
IMG_DIR="/var/lib/libvirt/images"
CONF_FILE="${IMG_DIR}/node_base.xml"
IMG_FILE="${IMG_DIR}/cirros.qcow2"

export LANG=C
. /etc/init.d/functions

function create_vm(){
        if [ -e ${IMG_DIR}/${1}.xml ];then
                echo_warning
                echo "vm ${1}.img is exists"
                return 1
        else
                qemu-img create -F qcow2 -b ${IMG_FILE} -f qcow2 ${IMG_DIR}/${1}.img 20G &> /dev/null
                sed -re "s,#{5},${1}," ${CONF_FILE} > ${CONF_DIR}/${1}.xml
                sudo virsh define ${CONF_DIR}/${1}.xml &> /dev/null
                echo_success
                echo "vm ${1} create successful"
        fi
}
function remove_vm(){
        read _ img <<<$(sudo virsh domblklist $1 2> /dev/null | awk 'NR==3{print}')
        if [ -e "${img}" ];then
                sudo virsh destroy $1 &> /dev/null
                sudo virsh undefine $1 &> /dev/null
                rm -f ${img}
                echo_success
                echo "vm ${1} delete successful"
        fi
}

case "$1" in
        create|remove)
        CMD=${1}
        while ((${#} > 1));do
                shift
                ${CMD}_vm ${1}
        done
        ;;
        *)
        echo "${0##*/} {create|remove} vm1 vm2 vm3 ... ..."
        ;;
esac

exit $?

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
编程的奥秘是指透过编写代码来探索和应用计算机科学的原理和技术。无论是哪种编程语言,编程都要依靠逻辑思维、算法和数据结构等基本概念。其中,.NET技术是一个广泛应用于Windows平台开发的开发框架。 学习和实践.NET技术是一项重要而有趣的任务。首先,我们需要了解.NET框架的基本原理和结构,包括CLR(公共语言运行时)和类库。CLR提供了一个托管环境,可以将源代码编译为中间语言IL,并在运行时将其转换为机器码。类库则是.NET框架提供的各种功能和工具,如Windows Forms、ASP.NET等,方便我们进行开发。 其次,我们需要学习C#这门面向对象的编程语言,因为C#是.NET技术的主要语言之一。掌握C#语法后,我们可以开始学习并应用各种.NET技术,如ADO.NET进行数据库操作、ASP.NET进行Web开发、WPF进行Windows应用程序开发等等。这些技术不仅可以帮助我们更高效地开发应用程序,还能提供更好的用户体验。 在学习和实践过程中,需要掌握良好的编码习惯和规范,注重代码的可读性和可维护性。此外,我们还应学会如何使用调试工具和日志记录来解决问题和优化代码性能。同时,我们也需要关注最新的.NET技术趋势和发展,如.NET Core框架、微服务架构等。 总之,编程的奥秘在于不断学习和实践,深入理解计算机科学的原理和技术,并灵活应用于实际项目中。通过掌握.NET技术,我们可以开发出更强大、高效和可靠的应用程序,为用户提供优质的体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值