热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

在KVM虚拟机中安装Oraclerac数据库

环境:CPU:Intelcore2E6750,内存:2G安装过程:1.安装rhel5.1x64版本,安装时选择所有开发相关内容;2.升级内核到当时最新版本(从www.kernel.org下载2.6.25.7,目的是为了更好支持kvm),升级过程如下:a.下载解压缩b.#makemrproperc.#makemenuco

    环境:CPU:Intel core2 E6750,内存:2G

    安装过程:

    1.安装rhel5.1 x64版本,安装时选择所有开发相关内容;

    2.升级内核到当时最新版本(从

    www.kernel.org

    下载2.6.25.7,目的是为了更好支持kvm),升级过程如下:

     a.下载解压缩

     b.# make mrproper

     c.# make menuconfig(这个时候把虚拟化的内容去掉,内核内嵌的kvm版本比较旧)

     d.#make

     e.#make modules_install

     f.#make install

     g.修改/boot/grub/menu.lst,让系统默认从新内核启动

    3.下载安装kvm,软件和文档地址

    http://kvm.qumranet.com/kvmwiki

     a.修改主机bios中,VT为ON,

     b.安装kvm,也就是configure,make,make install三步曲,

     c.加载kvm的两个模块,modprobe kvm,modprobe kvm-intel(amd相应使用kvm-adm)

    4.使用kvm安装虚拟机

     a.创建虚拟文件,qume-img create -f vmdk /test/host1.img 10G,qume-img create -f vmdg /test/data.img 10G,创建的镜像文件和vmware的虚拟盘一样,有数据时自动扩充.

     b.设置kvm的网络:

     ①.主机上需要做一个桥接才能让虚拟机和主机ip连通,需要安装默认安装是没有的bridge-utils-1.1-2,

     ②.#/usr/sbin/brctl addbr br0

     ③.#brctl addif br0 eth0

     ④.增加文件/etc/sysconfig/network-scripts/ifcfg-br0来保证每次重启自动启动这个桥接:

     DEVICE=br0

     TYPE=Bridge

     BOOTPROTO=dhcp

     OnBOOT=yes

     ⑤ .修改/etc/sysconfig/network-scripts/ifcfg-eth0添加BRIDGE来指定桥接在这个节点启动:

     BRIDGE=br0

     ⑥.增加一个脚本再虚拟器启动时候通过这个虚拟网卡和主机及外网通信qemu-ifup,并添加可执行权限:

     #!/bin/sh

     set -x

     switch=br0

     if [ -n "$1" ];then

     /usr/bin/sudo /usr/bin/tunctl -u `whoami` -t $1

     /usr/bin/sudo /sbin/ip link set $1 up

     sleep 0.5s

     /usr/bin/sudo /usr/sbin/brctl addif $switch $1

     exit 0

     else

     echo "Error: no interface specified"

     exit 1

     fi

     ⑦.开始安装虚拟机,qume-system-x86_64 -hda /test/hosting.img -hdb /test/data.img(系统识别到的hda和hdb) -m 800(所分配的内存) -net nic,model=rtl8139 -net tap,script=/qemu-ifup(网卡型号及使用虚拟网卡做桥接) -cdrom /test/rhel1.img(所使用的光盘镜像文件) -boot b(a,b,c对应软盘,光盘,硬盘)

    4.netapp模拟器的安装

     a.sh安装后run.sh运行,

     b.配置initiator groups,注册rac各节点的initiator,

     c.aggreate→volume→lun→lun map,

     e.进行网络的配置,由于netapp的模拟器在使用br0时总认为这不是一个可识别的设备,因此我只能弄了个dummy设备来给他用,配置过程如下:

     ①.下载piobd并安装:http://www.dur.ac.uk/c.c.dean/piobd/

     ②.做dummy的配置:/etc/modprobe.conf里面添加如下行:

     alias dummy0 dummy

     options dummy numdummies=1

     在/etc/sysconfig/network-sciptes里面添加文件ifcfg-dummy0:

     # Dummy Network Device

     DEVICE=dummy0

     BOOTPROTO=none

     OnBOOT=yes

     IPV6INIT=no

     TYPE=Ethernet

     MACADDR=01:02:03:04:05:06

     IPADDR=192.168.1.1

     NETMASK=255.255.255.0

     ARP=yes

     ③加载模块dummy,ifup dummy0 up,后将/sim/setup.sh里面的eth替换成dummy重新执行/sim/setup.sh;

     ④netapp模拟器自身网卡ip地址的配置,配置两个和dummy0相同网段的ip即可.

     ⑤网关及路由的配置---host1,我在/etc/rc5.d/里面添加文件S99brup,内容如下:

     [root@host1 rc5.d]# more S99brup

     echo "1">/proc/sys/net/ipv4/ip_forward -----------------启用ip转发让host2通过br0转发到dummy0

     ifconfig br0:100 177.177.100.102 netmask 255.255.255.0 up------配置rac的private网卡

     cd /sim

     ./bgrun.sh---------------------------后台启动netapp模拟器,如果不先进入路径将会找到不模拟器的一个库函数.此外要安装expert后才能再后台运行这个程序,rhel安装光盘里面就有这个包

     /etc/init.d/piobd restart------------piobd重启

     sleep 100---------------等待netapp模拟器完全启动

     /etc/init.d/iscsi restart----重启iscsi来刷新模拟器提供的iscsi lun

     chmod 777 /dev/sd*----每次iscsi重新识别设备后权限都是只有root可读,所以干脆改动一下.

     host2上/etc/rc5.d/S10network脚本里添加如下内容:

     ifconfig eth0:100 177.177.100.103 netmask 255.255.255.0 up

     route add -net 177.177.177.0 netmask 255.255.255.0 gw 192.219.19.52 dev eth0-------------添加177.177.177.0网段到192.219.19.0网段的路由.

     ⑥host1和host2上进行启动顺序的配置,确保host1上iscsi在piobd和网络启动之后启动,这个可以修改/etc/rc5.d/Sxx中xx的大小来实现.

    5.主机及虚拟机上iscsi initiator的安装和配置,

     a.安装iscsi-initiator,查看iscsi-initiator name:/etc/iscsi/initiator-name

     b.在netapp虚拟机上注册initiator-group,lun→iscsi enable

     c.在linux主机上进行iscsi设备的配置:

     ①[root@host1 client]# more /etc/iscsi/initiatorname.iscsi

     InitiatorName=iqn.1994-05.com.redhat:10e9c034314c

     ②# service iscsid start

     Turning off network shutdown. Starting iSCSI daemon: [ OK ]

     # chkconfig iscsid on

     ③# iscsiadm -m discovery -t sendtargets -p 177.177.177.200

     177.177.177.200:3260,1000 iqn.1992-08.com.netapp:sn.99909261

     177.177.177.201:3260,1001 iqn.1992-08.com.netapp:sn.99909261

     [root@d2850l12 ~]# iscsiadm -m node -T iqn.1992-08.com.netapp:sn.99909261 -p 177.177.177.200 -l

     [root@d2850l12 ~]# iscsiadm -m node -T iqn.1992-08.com.netapp:sn.99909261 -p 177.177.177.201 -l

    7.crs的安装,选择使用oracle 11g,开始使用了oracle 10g,结果10g需用使用raw,每次做ocr的格式化时候都报错,后来干脆使用oracle 11g直接用块设备.

     a.本来使用device mapper,但是开始我没有计划好把netapp的模拟器安装到了host2上,由于这个机器是虚拟机,结果在host2上到link的时候总是比较长时间这个机器没有响应,最后host1会认为iscsi1连接的设备无效,vote diska的失败导致这个节点panic.所以以后的安装是在host1上安装netapp的模拟器,同时有时候device mapper更新dm-xx时不是很及时,出现设备文件找不到的情况,后来ocr及asm都使用/dev/disk/by-id里面的设置,而且有个好处是及时有磁盘的添加删除这里面的名字都不会变动.

     b.runInstaller,安装的开始阶段总报libxp.so.6找不到的错,费了很多功夫,后来发现是oui使用的java是32bit,当时还考虑过指定java_home之类的方式让oui使用64bit的java,但是我没有找到办法,最后发现办法很简单,安装个32bit的libxp就行了.

     c.因为host1上使用br0,host2使用eth0来做public网卡,vip网卡我让它们使用br0和eth0的别名来实现,crs配置完成后发现两个上面都使用br0设备,但host2上根本就没有这个设备,这个可以使用srvctl来修改:srvctl modify nodeapps -n host2 -A ipaddress/netmask/eth0

     d.因为启用了11g的Auto Memory Management(?),对我的/dev/shm总是有大小的要求,有几次instance起不来就因为这个东西太小,所有不得以的时候也得手动去修改其大小:mount tmpfs /dev/shm -t tmpfs -o size=1g


推荐阅读
  • 浏览器作为我们日常不可或缺的软件工具,其背后的运作机制却鲜为人知。本文将深入探讨浏览器内核及其版本的演变历程,帮助读者更好地理解这一关键技术组件,揭示其内部运作的奥秘。 ... [详细]
  • 龙蜥社区开发者访谈:技术生涯的三次蜕变 | 第3期
    龙蜥社区的开发者们通过自己的实践和经验,推动着开源技术的发展。本期「龙蜥开发者说」聚焦于一位资深开发者的三次技术转型,分享他在龙蜥社区的成长故事。 ... [详细]
  • 在需要对iPhone进行全面备份时,有时会遇到电脑无法识别设备的情况。本文将详细分析导致这一问题的可能原因,并提供有效的解决方案。 ... [详细]
  • Linux入门教程第七课:基础命令与操作详解
    在本课程中,我们将深入探讨 Linux 系统中的基础命令与操作,重点讲解网络配置的相关知识。首先,我们会介绍 IP 地址的概念及其在网络协议中的作用,特别是 IPv4(Internet Protocol Version 4)的具体应用和配置方法。通过实际操作和示例,帮助初学者更好地理解和掌握这些基本技能。 ... [详细]
  • 教育类应用程序:提升学习效率的专业工具
    2019年,多家独角兽企业高薪聘请Python工程师,这引发了对高效学习工具的关注。以Duolingo为例,其“边玩边学”的模式为语言学习提供了新思路。类似地,错题本作为一种有效的学习方法,能够帮助学生记录和复习易错题目,从而提高学习效率。教育类应用程序通过整合这些先进的学习策略和技术手段,正逐渐成为提升学生学习效果的重要工具。 ... [详细]
  • 本文详细解析了如何利用Appium与Python在真实设备上执行测试示例的方法。首先,需要开启手机的USB调试功能;其次,通过数据线将手机连接至计算机并授权USB调试权限。最后,在命令行工具中验证设备连接状态,确保一切准备就绪,以便顺利进行测试。 ... [详细]
  • 3K助手HD安装遇到问题如何解决
    在使用3K助手HD时遇到安装问题怎么办?这款专为iPad设计的应用,旨在提供丰富的游戏安装、应用下载以及游戏评测和攻略阅读等功能。然而,有些用户可能会发现自己的iPad无法顺利安装该应用。面对这种情况,可以尝试检查设备的系统版本是否符合要求,或者清除缓存后重新尝试安装。如果问题依然存在,建议联系官方客服寻求帮助。 ... [详细]
  • 本文介绍了一个基于C++标准库实现的INI文件读写操作类。该类在现有网络资源的基础上进行了扩展和优化,增加了获取当前可执行文件路径和宽字节与多字节字符串转换的功能。通过这些增强功能,该类能够更好地适应各种应用场景,提高代码的可移植性和健壮性。具体实现细节请参见 `IniFileSTL.h` 文件。 ... [详细]
  • 对于初学者而言,搭建一个高效稳定的 Python 开发环境是入门的关键一步。本文将详细介绍如何利用 Anaconda 和 Jupyter Notebook 来构建一个既易于管理又功能强大的开发环境。 ... [详细]
  • 本文介绍了在Linux操作系统中如何通过修改内核参数来启用或禁用系统的Ping功能,包括临时和永久配置方法。 ... [详细]
  • 本文详细介绍了如何在Oracle VM VirtualBox中实现主机与虚拟机之间的数据交换,包括安装Guest Additions增强功能,以及如何利用这些功能进行文件传输、屏幕调整等操作。 ... [详细]
  • 软件测试行业深度解析:迈向高薪的必经之路
    本文深入探讨了软件测试行业的发展现状及未来趋势,旨在帮助有志于在该领域取得高薪的技术人员明确职业方向和发展路径。 ... [详细]
  • 本文详细介绍了如何在 Ubuntu 16.04 系统上配置 Qt 5.5 的交叉编译环境,特别针对 i.MX6 平台进行了优化设置。内容涵盖从基本的软件安装到高级配置的全过程。 ... [详细]
  • 本文详细介绍了JQuery Mobile框架中特有的事件和方法,帮助开发者更好地理解和应用这些特性,提升移动Web开发的效率。 ... [详细]
  • CentOS 7 网络模式下虚拟机的详细配置指南
     1::虚拟机选择net模式  2:虚拟网络配置 此处的网关和网段与下面的ens-33文件配置要一致由ens-33配置文件向这个配置看齐   3:网卡配置文件vietcsyscon ... [详细]
author-avatar
viggieg-may_789
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有