drbd 0.1.6 → 0.1.7
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +25 -5
- data/Rakefile +1 -1
- data/VERSION +1 -1
- data/lib/drbd.rb +24 -4
- metadata +5 -5
data/README.rdoc
CHANGED
@@ -4,18 +4,20 @@ Ruby wrapper for DRBD
|
|
4
4
|
|
5
5
|
== It is usefull for
|
6
6
|
|
7
|
-
* Connect to server over SSH
|
7
|
+
* Connect to the server over SSH
|
8
8
|
* Parse current running configuration
|
9
9
|
* Parse current status
|
10
|
+
* Execute essential commands
|
10
11
|
|
11
12
|
== Limitations
|
12
13
|
|
13
|
-
* Best with
|
14
|
-
* Hostname used for connection must be one of hostnames in drbd.conf (FQDN ideally)
|
15
|
-
* It'
|
14
|
+
* Best with DRBD version > 8.3.7
|
15
|
+
* Hostname used for connection must be one of the hostnames in drbd.conf (FQDN ideally)
|
16
|
+
* It's just one-morning's prototype, take patience
|
17
|
+
* Under development, everything may change
|
16
18
|
* No tests
|
17
19
|
* No documentation
|
18
|
-
* Absolutely no warranty, use it at your own risk
|
20
|
+
* Absolutely no warranty, use it at your own risk. Be carefull, you may lost some data!
|
19
21
|
|
20
22
|
== Installation
|
21
23
|
|
@@ -35,6 +37,24 @@ Ruby wrapper for DRBD
|
|
35
37
|
|
36
38
|
<tt>r = d.resources.first</tt>
|
37
39
|
|
40
|
+
- stateless execute command (WARNING! let's check the source what it does)
|
41
|
+
|
42
|
+
<tt>r.primary!</tt>
|
43
|
+
|
44
|
+
<tt>r.primary!(:force => true)</tt>
|
45
|
+
|
46
|
+
<tt>r.secondary!</tt>
|
47
|
+
|
48
|
+
<tt>r.connect!</tt>
|
49
|
+
|
50
|
+
<tt>r.attach!</tt>
|
51
|
+
|
52
|
+
<tt>r.detach!</tt>
|
53
|
+
|
54
|
+
<tt>r.up!</tt>
|
55
|
+
|
56
|
+
<tt>r.down!</tt>
|
57
|
+
|
38
58
|
- get resource name
|
39
59
|
|
40
60
|
<tt>r.name</tt>
|
data/Rakefile
CHANGED
@@ -11,7 +11,7 @@ begin
|
|
11
11
|
gem.homepage = "http://github.com/n1k/drbd"
|
12
12
|
gem.authors = ["Adam Kliment"]
|
13
13
|
gem.add_development_dependency "rspec", ">= 1.2.9"
|
14
|
-
gem.
|
14
|
+
gem.add_dependency "nokogiri", ">= 1.4.4"
|
15
15
|
end
|
16
16
|
Jeweler::GemcutterTasks.new
|
17
17
|
rescue LoadError
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.7
|
data/lib/drbd.rb
CHANGED
@@ -95,15 +95,35 @@ class DRBD
|
|
95
95
|
end
|
96
96
|
|
97
97
|
def down?
|
98
|
-
|
98
|
+
return true if status.nil?
|
99
|
+
return true if status[:cs] == "Unconfigured"
|
100
|
+
return false
|
99
101
|
end
|
100
102
|
|
101
103
|
def primary?
|
102
|
-
|
104
|
+
status[:ro1] == "Primary"
|
105
|
+
end
|
106
|
+
|
107
|
+
def secondary?
|
108
|
+
stutus[:ro1] == "Secondary"
|
103
109
|
end
|
104
110
|
|
105
|
-
def primary!
|
106
|
-
|
111
|
+
def primary!(opts = {})
|
112
|
+
|
113
|
+
if opts[:force] == true
|
114
|
+
args = "-- --overwrite-data-of-peer primary #{self.name}"
|
115
|
+
else
|
116
|
+
args = "primary #{self.name}"
|
117
|
+
end
|
118
|
+
|
119
|
+
command = "ssh #{drbd.host} \"#{drbd.command} #{args}\""
|
120
|
+
system(command)
|
121
|
+
drbd.load_status!
|
122
|
+
nil
|
123
|
+
end
|
124
|
+
|
125
|
+
def secondary!
|
126
|
+
args = "-- --overwrite-data-of-peer secondary #{self.name}"
|
107
127
|
command = "ssh #{drbd.host} \"#{drbd.command} #{args}\""
|
108
128
|
system(command)
|
109
129
|
drbd.load_status!
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: drbd
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 21
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 7
|
10
|
+
version: 0.1.7
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Adam Kliment
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-
|
18
|
+
date: 2011-02-09 00:00:00 +01:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -48,7 +48,7 @@ dependencies:
|
|
48
48
|
- 4
|
49
49
|
- 4
|
50
50
|
version: 1.4.4
|
51
|
-
type: :
|
51
|
+
type: :runtime
|
52
52
|
version_requirements: *id002
|
53
53
|
description: Ruby wrapper for DRBD - RAID 1 over TCP/IP
|
54
54
|
email: adam.kliment@virtualmaster.cz
|