当前位置: 首页 > 编程日记 > 正文

转【红帽GFS集群文件系统配置指南】

本节中将简单的介绍下RedHat的集群文件系统GFS的配置,集群文件系统同普通的文件系统,例如:ext3,ufs,ntfs不一样,集群文件系统采用分布式锁管理,可以实现多个节点同时读写文件。主流的集群文件主要有IBM的GPFS,Oracle公司出品的ocfs以及红帽公司出品的GFS。说来惭愧,在技术上一直有3大心愿没完成,包括oracle dataguard,grid control和gfs,时至今日,终于基本上实现了这三大指标!接下来就可以将rac环境下的归档日志存储在GFS上了

一:环境介绍

节点1 IP:192.168.1.51/24

操作系统:rhel5.4 64位 (kvm虚拟机)

主机名:dg51.yang.com

节点2 IP:192.168.1.52/24

操作系统:rhel5.4 64位 (kvm虚拟机)

主机名:dg51.yang.com

共享存储IP:192.168.1.100/24

操作系统:rhel6.0 64位

主机名:rhel6.yang.com

二: 配置共享存储并分区

[root@dg51 ~]# fdisk -l /dev/sda

Disk /dev/sda: 10.7 GB, 10737418240 bytes

64 heads, 32 sectors/track, 10240 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

Device Boot      Start         End      Blocks   Id  System

/dev/sda1               1       10240    10485744   83  Linux

这部分的配置请参考:http://www.linuxidc.com/Linux/2011-09/43537.htm

三:安装集群存储包组,两个节点上均需要配置

[root@dg51 ~]# cat /etc/yum.repos.d/base.repo [base] name=base baseurl=ftp://192.168.1.100/pub/iso5/Server gpgcheck=0 enable=1

[Cluster] name=Cluster baseurl=ftp://192.168.1.100/pub/iso5/Cluster gpgcheck=0 enable=1

[ClusterStorage] name=ClusterStorage baseurl=ftp://192.168.1.100/pub/iso5/ClusterStorage gpgcheck=0 enable=1

[root@dg51 ~]# yum -y groupinstall "Cluster Storage"  "Clustering"

三:创建配置文件,启动相关进程,两个节点做同样的配置

[root@dg51 ~]# system-config-cluster

[root@dg51 ~]# cat /etc/cluster/cluster.conf <?xml version="1.0" ?> <cluster config_version="2" name="dg_gfs">         <fence_daemon post_fail_delay="0" post_join_delay="3"/>         <clusternodes>                 <clusternode name="dg51.yang.com" nodeid="1" votes="1">                         <fence/>                 </clusternode>                 <clusternode name="dg52.yang.com" nodeid="2" votes="1">                         <fence/>                 </clusternode>         </clusternodes>         <cman expected_votes="1" two_node="1"/>         <fencedevices/>         <rm>                 <failoverdomains/>                 <resources/>         </rm> </cluster>

这里直接将配置文件复制到节点2 [root@dg51 ~]# scp /etc/cluster/cluster.conf dg52:/etc/cluster/ [root@dg51 ~]# lvmconf --enable-cluster

[root@dg51 ~]# service rgmanager start Starting Cluster Service Manager: [  OK  ] [root@dg51 ~]# chkconfig rgmanager on

[root@dg51 ~]# service ricci start Starting oddjobd: [  OK  ] generating SSL certificates...  done Starting ricci: [  OK  ] [root@dg51 ~]# chkconfig ricci on

root@dg51 ~]# service cman start Starting cluster:    Loading modules... done    Mounting configfs... done    Starting ccsd... done    Starting cman... done    Starting daemons... done    Starting fencing... done  [  OK  ] [root@dg51 ~]# chkconfig cman on

[root@dg51 ~]# service clvmd start Starting clvmd: [  OK  ] Activating VGs: [  OK  ] [root@dg51 ~]# chkconfig clvmd on

[root@dg51 ~]# clustat Cluster Status for dg_gfs @ Sat Dec 10 17:25:09 2011 Member Status: Quorate

Member Name                             ID   Status ------ ----                             ---- ------ dg51.yang.com                               1 Online, Local dg52.yang.com                               2 Online

四:在共享存储上划分LVM,在一个节点上操作即可

[root@dg51 ~]# fdisk -l /dev/sda (在开始之前,需要将分区改为8e)

Disk /dev/sda: 10.7 GB, 10737418240 bytes 64 heads, 32 sectors/track, 10240 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes

   Device Boot      Start         End      Blocks   Id  System /dev/sda1               1       10240    10485744   8e  Linux LVM

[root@dg51 ~]# pvcreate /dev/sda1   Physical volume "/dev/sda1" successfully created [root@dg51 ~]# vgcreate dg_gfs /dev/sda1   Clustered volume group "dg_gfs" successfully created [root@dg51 ~]# vgdisplay dg_gfs   --- Volume group ---   VG Name               dg_gfs   System ID               Format                lvm2   Metadata Areas        1   Metadata Sequence No  1   VG Access             read/write   VG Status             resizable   Clustered             yes   Shared                no   MAX LV                0   Cur LV                0   Open LV               0   Max PV                0   Cur PV                1   Act PV                1   VG Size               10.00 GB   PE Size               4.00 MB   Total PE              2559   Alloc PE / Size       0 / 0     Free  PE / Size       2559 / 10.00 GB   VG UUID               hMivT2-FIuF-QX2N-EXU9-CaZF-wR5a-8QS7t4

[root@dg51 ~]# lvcreate -n gfs1 -l 2559 dg_gfs   Logical volume "gfs1" created

如果出现下面的错误,在两个节点上重启下clvmd进程即可 [root@dg51 ~]# lvcreate -n gfs1 -l 2559 dg_gfs   Error locking on node dg52.yang.com: Volume group for uuid not found:

hMivT2FIuFQX2NEXU9CaZFwR5a8QS7t4Ft4RMjI9V6a3jUudYQe0i1IygtIlaHxc   Aborting. Failed to activate new LV to wipe the start of it.

[root@dg51 ~]# service clvmd restart Deactivating VG dg_gfs:   0 logical volume(s) in volume group "dg_gfs" now active [  OK  ] Stopping clvm:  [  OK  ] Starting clvmd: [  OK  ] Activating VGs:   0 logical volume(s) in volume group "dg_gfs" now active

[root@dg51 ~]# service clvmd status clvmd (pid 5494) is running... active volumes: gfs1 [  OK  ]

[root@dg51 ~]# lvscan   ACTIVE            '/dev/dg_gfs/gfs1' [10.00 GB] inherit

[root@dg52 ~]# lvscan   ACTIVE            '/dev/dg_gfs/gfs1' [10.00 GB] inherit

五:格式化lvm卷

[root@dg51 ~]# gfs_mkfs -h Usage:

gfs_mkfs [options] <device>

Options:

  -b <bytes>       Filesystem block size   -D               Enable debugging code   -h               Print this help, then exit   -J <MB>          Size of journals   -j <num>         Number of journals   -O               Don't ask for confirmation   -p <name>        Name of the locking protocol   -q               Don't print anything   -r <MB>          Resource Group Size   -s <blocks>      Journal segment size   -t <name>        Name of the lock table   -V               Print program version information, then exit

[root@dg51 ~]# gfs_mkfs -p lock_dlm  -t dg_gfs:gfs -j 2 /dev/dg_gfs/gfs1 This will destroy any data on /dev/dg_gfs/gfs1.   It appears to contain a gfs filesystem.

Are you sure you want to proceed? [y/n] y

Device:                    /dev/dg_gfs/gfs1 Blocksize:                 4096 Filesystem Size:           2554644 Journals:                  2 Resource Groups:           40 Locking Protocol:          lock_dlm Lock Table:                dg_gfs:gfs

Syncing... All Done

六:在两个节点上分别挂载,并测试写入数据

[root@dg51 ~]# mount -t gfs /dev/mapper/dg_gfs-gfs1 /dg_archivelog/ [root@dg51 ~]# df -h Filesystem            Size  Used Avail Use% Mounted on /dev/vda3              28G  8.6G   18G  34% / /dev/vda1              99M   12M   83M  13% /boot tmpfs                 391M     0  391M   0% /dev/shm /dev/mapper/dg_gfs-gfs1                       9.8G   20K  9.8G   1% /dg_archivelog

[root@dg52 ~]# mkdir /dg_archivelog2 [root@dg52 ~]# mount -t gfs /dev/dg_gfs/gfs1 /dg_archivelog2/ [root@dg52 ~]# df -h Filesystem            Size  Used Avail Use% Mounted on /dev/vda3              28G  9.1G   17G  36% / /dev/vda1              99M   12M   83M  13% /boot tmpfs                 391M     0  391M   0% /dev/shm /dev/mapper/dg_gfs-gfs1                       9.8G   20K  9.8G   1% /dg_archivelog2

[root@dg52 ~]# cp /etc/hosts /dg_archivelog2/ [root@dg51 ~]# cat /dg_archivelog/hosts # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1               localhost.localdomain localhost ::1             localhost6.localdomain6 localhost6 192.168.1.51            dg51.yang.com   dg51 192.168.1.52            dg52.yang.com   dg52 192.168.1.55            grid5.yang.com  grid5

如果要开机自动挂载,可在/etc/fstab文件中添加开机自动挂载项 [root@dg51 ~]# tail -1 /etc/fstab /dev/mapper/dg_gfs-gfs1  /dg_archivelog         gfs     defaults        0 0

七:性能测试

[root@dg51 ~]# dd if=/dev/zero of=/dg_archivelog/gfs_test bs=10M count=100 100+0 records in 100+0 records out 1048576000 bytes (1.0 GB) copied, 9.11253 seconds, 115 MB/s iscsi模拟出来的共享存储,I/0性能一般,只能用于学习

八:使用浏览器进行管理

[root@dg51 ~]# luci_admin  init Initializing the luci server

Creating the 'admin' user

Enter password: Confirm password:

Please wait... The admin password has been successfully set. Generating SSL certificates... The luci server has been successfully initialized You must restart the luci server for changes to take effect. Run "service luci restart" to do so

[root@dg51 ~]# service luci restart Shutting down luci: [  OK  ] Starting luci: Generating https SSL certificates...  done [  OK  ]

Point your web browser to https://dg51.yang.com:8084 to access luci

红帽GFS集群文件系统配置指南

红帽GFS集群文件系统配置指南

红帽GFS集群文件系统配置指南

红帽GFS集群文件系统配置指南

转载于:https://www.cnblogs.com/pipijiqimao/archive/2013/05/14/3077894.html

相关文章:

[nRF51822] 8、基础实验代码解析大全 · 实验11 - PPI

前一篇分析了前十个基础实验的代码&#xff0c;从这里开始分析后十个~ 一、PPI原理&#xff1a; PPI(Programmable Peripheral Interconnect)&#xff0c;中文翻译为可编程外设互连。 在nRF51822 内部设置了PPI 方式&#xff0c;可以通过任务和事件让不同外设之间进行互连&…

【组队学习】【第30期】青少年编程(Scratch 三级)

小朋友们大家好&#xff0c;我是本次组队学习的领航员-马燕鹏&#xff0c;欢迎大家参加《青少年编程&#xff08;Scratch 三级&#xff09;》航海活动。 今天的开营有两大环节&#xff1a; 1、「活动介绍」介绍我们这个活动的整体设计框架。2、「规则介绍」介绍我们本次活动要…

linux resin mysql_Linux下Resin JSP MySQL的安装和配置-2

如果有,陆续(2)编辑httpd.conf# vi /usr/local/apache2/conf/httpd.conf找到ResinConfigServer localhost 6802确信其内容为:LoadModule caucho_module /usr/local/apache2/modules/mod_caucho.soResinConfigServer 192.168.1.109 6802 //即改localhost为你的计算机的实际IPCa…

胡锐锋:组队学习分享(队长)

组队学习分享&#xff08;队长&#xff09; 自我介绍 胡锐锋&#xff0c;现为Datawhale成员&#xff0c;目前担任《统计学习方法习题解答》开源项目的负责人&#xff0c;已工作近8年&#xff0c;由大数据平台研发工程师转变成一位项目管理人。我的人生目标是让未来的孩子们少…

[转]解析字符串的方法

解析字符串的方法 char st[]”123.45ab”; 解析这一段字符串&#xff0c;有很多种方法。这里介绍一个在”stdio.h”里面的函数: sscanf(…); 如果你看了如下代码&#xff0c;应该会有所感悟&#xff1a; 1 # include "stdio.h"2 3 int main() {4 char st[]"…

SpringBoot之@EnableConfigurationProperties分析

我们在用SpringBoot进行项目开发的时候&#xff0c;基本上都使用过ConfigurationProperties这个注解&#xff0c;我们在之前的文章中也说过ConfigurationPropertiesBindingPostProcessor会对标注ConfigurationProperties注解的Bean进行属性值的配置&#xff0c;但是我们之前没有…

mysql 自动管理内存_MySQL内存管理,内存分配器和操作系统

导读作者&#xff1a;Sveta Smirnova翻译&#xff1a;郑志江校对&#xff1a;徐晨亮原文 &#xff1a;MySQL Memory Management, Memory Allocators and Operating System本文涉及链接在文末展示当用户使用任何软件(包括MySQL)碰到内存问题时&#xff0c;我们第一反应就是内存泄…

采集音频和摄像头视频并实时H264编码及AAC编码

0. 前言 我在前两篇文章中写了DirectShow捕获音视频然后生成avi&#xff0c;再进行264编码的方法。那种方法有一些局限性&#xff0c;不适合实时性质的应用&#xff0c;如&#xff1a;视频会议、视频聊天、视频监控等。本文所使用的技术&#xff0c;适用于这种实时性的应用&…

【算法练习】校招研发工程师笔试题

请留言&#xff0c;说出你的解题思路和答案。稍后&#xff0c;我会把参考答案发到留言区。不定期整理相关的问题答案分享。 01、下面对于线性表的叙述中&#xff0c;不正确的是&#xff08;&#xff09;。 &#xff08;A&#xff09;线性表采用顺序存储时&#xff0c;必须占用…

Ubuntu安装tomcat

1.从官网中下载apache-tomcat-**.tar.gz文件 2.在本地文件新建一个文件夹&#xff08;tomcat&#xff09;&#xff0c;在文件夹中解压压缩包, 不需要使用root: tar -zxvf /home/xcx/下载/apache-tomcat-8.5.11.tar.gz 3.进入解压文件中使用命令,将tomcat中的文件全部设置添加读…

mysql 绑定参数_MySQL 使用 Perl 绑定参数和列

SQL 语句通常是动态构建的&#xff0c;用户提供一些输入&#xff0c;并将其内置到语句中。 程序员每次处理用户的输入时都必须谨慎。 它具有一些严重的安全隐患。 动态构建 SQL 语句的推荐方法是使用参数绑定。绑定参数可以防止 SQL 注入程序。 它会自动转义一些特殊字符并允许…

java入门(p1)进入java的世界

浅谈java世界&#xff08;连载中P1&#xff09; Java是一门语言&#xff0c;它并不是很难理解的东西&#xff0c;语言是来进行交流的工具&#xff0c;那么它用来跟谁来交互呢&#xff0c;所有的语言都有与其交流的对象&#xff0c;中文也好英文也罢&#xff0c;交流基本的对象应…

python __setattr__ , __getattr__

Python Class 对象或类型通过内置成员 __dict__ 来存储成员信息。 我们还可以通过重载 __getattr__ 和 __setattr__ 来拦截对成员的访问&#xff0c;需要注意的是 __getattr__ 只有在访问不存在的成员时才会被调用。转载于:https://www.cnblogs.com/Huayuan/archive/2013/05/17…

第01章 PyTorch简介和安装 的学习笔记

由于第一章&#xff0c;主要介绍Pytorch的安装&#xff0c;而自己的笔记本已经安装了CPU版本的Pytorch&#xff0c;所以第一章主要是复习了Conda的基本命令并做了5个选择题供大家练习。 课程来源&#xff1a;https://github.com/datawhalechina/thorough-pytorch 1、在Window…

python socket tcp客户端_python网络编程socketserver模块(实现TCP客户端/服务器)

摘录python核心编程socketserver(python3.x版本重新命名)是标准库中的网络编程的高级模块。通过将创建网络客户端和服务器所必须的代码封装起来&#xff0c;简化了模板&#xff0c;为你提供了各种各样的类。除了隐藏了实现细节之外&#xff0c;它督促我们使用类(面向对象的思维…

template.process(root, out)的用法(shiro项目中来的九)

假如你现在还在为自己的技术担忧&#xff0c;假如你现在想提升自己的工资&#xff0c;假如你想在职场上获得更多的话语权&#xff0c;假如你想顺利的度过35岁这个魔咒&#xff0c;假如你想体验BAT的工作环境&#xff0c;那么现在请我们一起开启提升技术之旅吧&#xff0c;详情请…

java中最常用jar包的用途说明,适合初学者

jar包用途axis.jarSOAP引擎包commons-discovery-0.2.jar用来发现、查找和实现可插入式接口&#xff0c;提供一些一般类实例化、单件的生命周期管理的常用方法.jaxrpc.jarAxis运行所需要的组件包saaj.jar创建到端点的点到点连接的方法、创建并处理SOAP消息和附件的方法&#xff…

【青少年编程(第33周)】Scratch(三级)公益活动开营了!

2021年10月10日&#xff08;周日&#xff09;晚20:00我们在青少年编程竞赛交流群开展了第三十三期直播活动。我们直播活动的主要内容如下&#xff1a; 首先&#xff0c;我们奖励了上周测试超过40分的小朋友。 其次&#xff0c;我们讲解了上次测试中小朋友们做错的题目Scratch青…

python函数图像绘制、函数不固定_无法在函数中绘制tkinter图像

我正在制作一个垄断游戏&#xff0c;我试图在画布上绘制图像&#xff0c;但它只有在功能不起作用的情况下才会起作用&#xff1a;def make_image(root, location, canvas):photo PhotoImage(file root)canvas.create_image(location["X"],location["Y"],…

一些与算法有关的网站

//转自&#xff1a;http://www.cnblogs.com/a180285/archive/2012/01/15/2290290.html //------------------------------------------------------------------------------------------------------------------------------------------------------------ 我在网上到处找了…

【工程基础】校招研发工程师笔试题

请留言&#xff0c;说出你的解题思路和答案。稍后&#xff0c;我会把参考答案发到留言区。不定期整理相关的问题答案分享。 1、以下代码违反了什么设计原则&#xff08;&#xff09; public class Student {public int Id;public string StudentName; }public class MClass {…

情人节学写html5微信游戏

情人节都在干什么&#xff1f;&#xff1f;&#xff1f; 当然是写代码&#xff01;&#xff01;&#xff01; 看某书正好以一个html5微信游戏&#xff0c;很适合今天的日子 附上demo&#xff1a;demo 请在手机上查看&#xff0c;pc端请切换手机调试模式&#xff0c;目前没弄完后…

python和idl_有前辈对比过IDL和Python的速度吗,哪个会快点?

看到这个问题&#xff0c;发现国外还真有人做过对比&#xff0c;主要在于语言特点方面&#xff0c;并没有详细的定量对比&#xff0c;贴过来大家一起乐呵乐呵。其实大体上就是之前几位答主所说的那样&#xff0c;主要区别在于&#xff1a;1.资料的多少。python资料较多2.现成的…

测试用例经验谈

1.需要测试的那个类是new出来的实例&#xff1b; 2.被测试的类实例的对象所需要调用的接口或者对象都是mock出来的&#xff08;无论是否已经有实现&#xff09;。 3.所有的接口都是根据被测试的类的需要产生的&#xff0c;即接口属于客户&#xff08;被测试的类&#xff09;。 …

中国电子学会图形化四级编程题:加减法混合运算器

「青少年编程竞赛交流群」已成立&#xff08;适合6至18周岁的青少年&#xff09;&#xff0c;公众号后台回复【Scratch】或【Python】&#xff0c;即可进入。如果加入了之前的社群不需要重复加入。 我们将有关编程题目的教学视频已经发布到抖音号21252972100&#xff0c;小马老…

Bzoj4566:[HAOI2016]找相同字符

题面 Bzoj Sol 两个串拼在一起后求出后缀数组 然后显然的\(n^2\)暴力&#xff0c;就是直接枚举求\(LCP\) 又由于扫的时候是对\(height\)取\(min\) 那么可以用单调栈维护每一段的贡献相同的 # include <bits/stdc.h> # define RG register # define IL inline # define Fi…

python字符照片_python图片转字符图片

python图片转字符图片代码话不多说&#xff0c;直接上代码。***************************#-*- coding:utf-8 -*-from PIL import ImageIMG#文件路径WIDTH60HEIGHT45ascii_char list("$B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_~<>i!lI;:,\"^…

三大基本排序专题

//以下依次是冒泡、选择、插入排序 var n,i:longint;a:array[0..20] of longint;procedure BUB;var i,j,t:longint;beginfor i:1 to n-1 dofor j:1 to n-i doif a[j]>a[j1] then begin t:a[j]; a[j]:a[j1]; a[j1]:t; end;end;procedure SEL;var i,j,k,t:longint;beginfor i:…

Linux内核中锁机制之完成量、互斥量

在上一篇博文中笔者分析了关于信号量、读写信号量的使用及源码实现&#xff0c;接下来本篇博文将讨论有关完成量和互斥量的使用和一些经典问题。 八、完成量 下面讨论完成量的内容&#xff0c;首先需明确完成量表示为一个执行单元需要等待另一个执行单元完成某事后方可执行&…

中国电子学会图形化四级编程题:绳子算法

「青少年编程竞赛交流群」已成立&#xff08;适合6至18周岁的青少年&#xff09;&#xff0c;公众号后台回复【Scratch】或【Python】&#xff0c;即可进入。如果加入了之前的社群不需要重复加入。 我们将有关编程题目的教学视频已经发布到抖音号21252972100&#xff0c;小马老…