热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

OpenVZ虚拟机的安装步骤

OpenVZ是唯一可用于unibilling生产用的服务器虚拟技术。目前全球有多套unibilling运行于OpenVZcontainer。经过3年多的VOIP连续运营生产,证实绝对可靠稳定。在新的服务器上用如下步骤安装openVZ:导入OpenVZyum源cd/etc/yum.repos.dwgethttp://do

OpenVZ 是唯一可用于unibilling生产用的服务器虚拟技术。目前全球有多套unibilling运行于OpenVZ container。经过3年多的VOIP连续运营生产,证实绝对可靠稳定。

在新的服务器上用如下步骤安装openVZ:

导入 OpenVZ yum源

cd /etc/yum.repos.d
wget http://download.openvz.org/openvz.repo
rpm ?import  http://download.openvz.org/RPM-GPG-Key-OpenVZ

下载openVZ内核及头文件安装包

mkdir -p /usr/src/files

cd /usr/src/files

wget http://download.openvz.org/kernel/branches/rhel5-2.6.18/028stab068.3/ovzkernel-2.6.18-164.11.1.el5.028stab068.3.i686.rpm

wget http://download.openvz.org/kernel/branches/rhel5-2.6.18/028stab068.3/ovzkernel-devel-2.6.18-164.11.1.el5.028stab068.3.i686.rpm

安装openVZ内核及头文件

rpm -ihv ovzkernel*.rpm

配置boot loader确保使用openVZ的内核启动

vi /etc/grub.conf

配置 sysctl

确保 /etc/sysctl.conf 文件中包含如下信息:

# On Hardware Node we generally need
# packet forwarding enabled and proxy arp disabled
net.ipv4.ip_forward = 1
net.ipv6.conf.default.forwarding = 1
net.ipv6.conf.all.forwarding = 1
net.ipv4.conf.default.proxy_arp = 0

# Enables source route verification
net.ipv4.conf.all.rp_filter = 1

# Enables the magic-sysrq key
kernel.sysrq = 1

# We do not want all our interfaces to send redirects
net.ipv4.conf.default.send_redirects = 1
net.ipv4.conf.all.send_redirects = 0

编辑完毕保存,运行如下命令使之生效:

sysctl -p

禁用 SELinux

修改 /etc/sysconfig/selinux 文件,使其包含信息:
SELINUX=disabled

重新启动linux

shutdown -r now

机器重新启动后,运行 uname -r检查是否已经是openVZ的内核

安装openvz工具集

yum install vzquota
yum install vzctl-lib
yum install vzctl
yum install vzyum
yum install vzpkg
yum install vzrpm43-python
yum install vzrpm44-python

启动OpenVZ服务
/sbin/service vz start
安装操作系统模板文件

查找系统中可用的操作系统模板
yum search vztmpl
[root@tpd620 /]# yum search vztmpl
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* addons: mirror.ii.uib.no
* base: mirror.ii.uib.no
* extras: mirror.ii.uib.no
* openvz-kernel-rhel5: openvz.proserve.nl
* openvz-utils: openvz.proserve.nl
* updates: mirror.ii.uib.no
====================== Matched: vztmpl =======================
vztmpl-centos-4.i386 : OpenVZ template metadata for centos-4 i386.
vztmpl-fedora-7.i386 : OpenVZ template metadata for fedora-7 i386.
vztmpl-fedora-core-3.i386 : OpenVZ template metadata for fedora-core-3 i386.
vztmpl-fedora-core-4.i386 : OpenVZ template metadata for fedora-core-4 i386.
vztmpl-fedora-core-5.i386 : OpenVZ template metadata for fedora-core-5 i386.
vztmpl-fedora-core-6.i386 : OpenVZ template metadata for fedora-core-6 i386.
[root@tpd620 /]#

安装centos linux操作系统模板
yum install vztmpl-centos-4

为操作系统模板建立缓存
vzpkgcache
该命令将建立 centos-4-i386-minimal.tar.gz 和 centos-4-i386-default.tar.gz
vzpkgcache centos-4-i386-minimal 将只建立 centos-4-i386-minimal.tar.gz
vzpkgcache centos-4-i386-default 将只建立 centos-4-i386-default.tar.gz
查看系统中存在的操作系统缓存:
[root@c8 ~]# vzpkgls
centos-4-i386-default
centos-4-i386-minimal

建立OpenVZ节点container

准备配置文件

为方便起见,平分Host机器的内存和CPU
cd /etc/sysconfig/vz-scripts/
vzsplit -n 3 -f vps.mytest

上述命令将均分系统资源为3等份,产生一个例子配置文件
验证该文件的有效性:vzcfgvalidate ve-vps.mytest.conf-sample
创建节点VPS
vzctl create 112 --ostemplate centos-4-i386-minimal --config vps.mytest

配置该VPS
vzctl set 112 --hostname unibillingsrv1 --save
vzctl set 112 --ipadd 207.182.xxx.xxx --save
vzctl set 112 --userpasswd root:xxxxxxxxx
vzctl set 112 --nameserver 209.190.xxx.xxx --save
vzctl set 112 --onboot yes --save
vzctl start 112
vzctl exec 112 service sshd start
vzctl enter 112
vzctl stop 112

配置VPS硬盘容量等参数
grep DISK_QUOTA /etc/sysconfig/vz
df /vz
vi /etc/sysconfig/vz-scripts/112.conf

在该文件中添加 DISK_QUOTA=no
grep DISK_QUOTA /etc/sysconfig/vz-scripts/112.conf
vzctl stop 112
vzctl start 112
vzctl exec 112 df
vzctl set 112 --diskinodes 75000000:79000000 --save
vzctl set 112 --quotatime 600 --save
vzctl exec 112 df
vzctl exec 112 stat -f /
vzctl set 112 --quotaugidlimit 100 --save
vzctl stop 112
vzctl start 112
vzctl exec 112 rpm -q quota
vzyum 112 install quota
vzquota stat 112 -t

向新建的vps中安装yum等工具
vzyum 112 install yum
vzyum 112 install diffutils

错误处理

若vzctl enter进入节点时出现错误,或ssh无法进入节点,需要运行如下命令:
vzctl exec 112 "cd /dev; /sbin/MAKEDEV pty; /sbin/MAKEDEV tty; /sbin/MAKEDEV generic"


推荐阅读
  • 软件测试行业深度解析:迈向高薪的必经之路
    本文深入探讨了软件测试行业的发展现状及未来趋势,旨在帮助有志于在该领域取得高薪的技术人员明确职业方向和发展路径。 ... [详细]
  • 本文介绍了SELinux的两种主要工作模式——强制模式和宽容模式,并提供了如何在CentOS 7中正确启用和配置SELinux的方法,以及在遇到登录问题时的解决策略。 ... [详细]
  • 调试利器SSH隧道
    在开发微信公众号或小程序的时候,由于微信平台规则的限制,部分接口需要通过线上域名才能正常访问。但我们一般都会在本地开发,因为这能快速的看到 ... [详细]
  • CentOS下ProFTPD的安装与配置指南
    本文详细介绍在CentOS操作系统上安装和配置ProFTPD服务的方法,包括基本配置、安全设置及高级功能的启用。 ... [详细]
  • 本文详细介绍了如何搭建一个高可用的MongoDB集群,包括环境准备、用户配置、目录创建、MongoDB安装、配置文件设置、集群组件部署等步骤。特别关注分片、读写分离及负载均衡的实现。 ... [详细]
  • 本文详细介绍了如何在ARM架构的目标设备上部署SSH服务端,包括必要的软件包下载、交叉编译过程以及最终的服务配置与测试。适合嵌入式开发人员和系统集成工程师参考。 ... [详细]
  • 本文介绍了Linux操作系统的核心组成部分——内核及其版本分类,以及市面上常见的几种Linux发行版,旨在为初学者提供一个清晰的学习路径。 ... [详细]
  • 构建个人多节点Linux环境(CodeSheep)
    本文介绍如何通过虚拟机搭建一个多节点的Linux环境,这对于学习、实验和项目部署都具有重要意义。文章详细讲解了网络IP设置、节点间通信等关键步骤。 ... [详细]
  • CentOS7通过RealVNC实现多人使用服务器桌面
    背景:公司研发团队通过VNC登录到CentOS服务器的桌面实现软件开发工作为防止数据外泄,需要在RealVNC设置禁止传输文件、访问粘贴板等策略过程&# ... [详细]
  • Web动态服务器Python基本实现
    Web动态服务器Python基本实现 ... [详细]
  • Jupyter Notebook多语言环境搭建指南
    本文详细介绍了如何在Linux环境下为Jupyter Notebook配置Python、Python3、R及Go四种编程语言的环境,包括必要的软件安装和配置步骤。 ... [详细]
  • 本文介绍了一种方法,通过使用Python的ctypes库来调用C++代码。具体实例为实现一个简单的加法器,并详细说明了从编写C++代码到编译及最终在Python中调用的全过程。 ... [详细]
  • 每种编程语言都有其独特的完成任务的方式,这也说明了为什么有这么多语言可供选择。在JimHall的《不同的编程语言如何完成相同的事情》文章中,他演示了13种不同的语言如何使用不同的语 ... [详细]
  • 本文详细介绍了如何使用Heartbeat构建一个高可用性的Apache集群,包括安装、配置和测试步骤。 ... [详细]
  • 本文详细介绍了在 CentOS 7 系统中安装 Python 3.7 的步骤,包括编译工具的安装、Python 3.7 源码的下载与编译、软链接的创建以及常见错误的处理方法。 ... [详细]
author-avatar
begmwr
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有