2 -- Copyright (c) 2013 Mikolaj Golub <trociny@FreeBSD.org>
3 -- All rights reserved.
5 -- Redistribution and use in source and binary forms, with or without
6 -- modification, are permitted provided that the following conditions
8 -- 1. Redistributions of source code must retain the above copyright
9 -- notice, this list of conditions and the following disclaimer.
10 -- 2. Redistributions in binary form must reproduce the above copyright
11 -- notice, this list of conditions and the following disclaimer in the
12 -- documentation and/or other materials provided with the distribution.
14 -- THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
15 -- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16 -- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17 -- ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
18 -- FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 -- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 -- OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 -- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 -- LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 -- OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29 BEGEMOT-HAST-MIB DEFINITIONS ::= BEGIN
32 MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
35 TEXTUAL-CONVENTION, RowStatus
37 InterfaceIndex, ifIndex
42 begemotHast MODULE-IDENTITY
43 LAST-UPDATED "201304130000Z"
44 ORGANIZATION "FreeBSD"
48 Postal: Bluhera 27v 11
54 E-Mail: trociny@FreeBSD.org"
56 "The Begemot MIB for managing HAST."
57 REVISION "201304130000Z"
60 REVISION "201307010000Z"
62 "Added hastResourceWorkerPid."
65 begemotHastObjects OBJECT IDENTIFIER ::= { begemotHast 1 }
67 -- ---------------------------------------------------------- --
68 -- Configuration parameters
69 -- ---------------------------------------------------------- --
71 hastConfig OBJECT IDENTIFIER ::= { begemotHastObjects 1 }
73 hastConfigFile OBJECT-TYPE
78 "HAST configuration file location."
81 -- ---------------------------------------------------------- --
83 -- ---------------------------------------------------------- --
84 hastResourceTable OBJECT-TYPE
85 SYNTAX SEQUENCE OF HastResourceEntry
86 MAX-ACCESS not-accessible
89 "A table containing information about all HAST resources."
90 ::= { begemotHastObjects 2 }
92 hastResourceEntry OBJECT-TYPE
93 SYNTAX HastResourceEntry
94 MAX-ACCESS not-accessible
97 "Table entry that describes one HAST resource."
98 INDEX { hastResourceIndex }
99 ::= { hastResourceTable 1 }
101 HastResourceEntry ::= SEQUENCE {
102 hastResourceIndex Integer32,
103 hastResourceName OCTET STRING,
104 hastResourceRole INTEGER,
105 hastResourceProvName OCTET STRING,
106 hastResourceLocalPath OCTET STRING,
107 hastResourceExtentSize Integer32,
108 hastResourceKeepDirty Integer32,
109 hastResourceRemoteAddr OCTET STRING,
110 hastResourceSourceAddr OCTET STRING,
111 hastResourceReplication INTEGER,
112 hastResourceStatus INTEGER,
113 hastResourceDirty Counter64,
114 hastResourceReads Counter64,
115 hastResourceWrites Counter64,
116 hastResourceDeletes Counter64,
117 hastResourceFlushes Counter64,
118 hastResourceActivemapUpdates Counter64,
119 hastResourceReadErrors Counter64,
120 hastResourceWriteErrors Counter64,
121 hastResourceDeleteErrors Counter64,
122 hastResourceFlushErrors Counter64,
123 hastResourceWorkerPid INTEGER
126 hastResourceIndex OBJECT-TYPE
132 ::= { hastResourceEntry 1 }
134 hastResourceName OBJECT-TYPE
140 ::= { hastResourceEntry 2 }
142 hastResourceRole OBJECT-TYPE
143 SYNTAX INTEGER { undef(0), init(1), primary(2), secondary(3) }
144 MAX-ACCESS read-write
148 ::= { hastResourceEntry 3 }
150 hastResourceProvName OBJECT-TYPE
155 "Resource GEOM provider name that appears as /dev/hast/<name>."
156 ::= { hastResourceEntry 4 }
158 hastResourceLocalPath OBJECT-TYPE
163 "Path to the local component which is used as a backend
164 provider for the resource."
165 ::= { hastResourceEntry 5 }
167 hastResourceExtentSize OBJECT-TYPE
172 "Size of an extent. Extent is a block which is
173 used for synchronization. hastd(8) maintains a
174 map of dirty extents and extent is the smallest
175 region that can be marked as dirty. If any part
176 of an extent is modified, entire extent will be
177 synchronized when nodes connect."
178 ::= { hastResourceEntry 6 }
180 hastResourceKeepDirty OBJECT-TYPE
185 "Maximum number of dirty extents to keep dirty all
186 the time. Most recently used extents are kept
187 dirty to reduce number of metadata updates."
188 ::= { hastResourceEntry 7 }
190 hastResourceRemoteAddr OBJECT-TYPE
195 "Address of the remote hastd(8) daemon for the resource."
196 ::= { hastResourceEntry 8 }
198 hastResourceSourceAddr OBJECT-TYPE
203 "Local address the resource is bound to."
204 ::= { hastResourceEntry 9 }
206 hastResourceReplication OBJECT-TYPE
207 SYNTAX INTEGER { fullsync(0), memsync(1), async(2) }
211 "Resource replication mode."
212 ::= { hastResourceEntry 10 }
214 hastResourceStatus OBJECT-TYPE
215 SYNTAX INTEGER { complete(0), degraded(1) }
219 "Resource replication status."
220 ::= { hastResourceEntry 11 }
222 hastResourceDirty OBJECT-TYPE
227 "Current number of dirty extents for the resource."
228 ::= { hastResourceEntry 12 }
230 hastResourceReads OBJECT-TYPE
235 "Count of resource local read operations."
236 ::= { hastResourceEntry 13 }
238 hastResourceWrites OBJECT-TYPE
243 "Count of resource local write operations."
244 ::= { hastResourceEntry 14 }
246 hastResourceDeletes OBJECT-TYPE
251 "Count of resource local delete operations."
252 ::= { hastResourceEntry 15 }
254 hastResourceFlushes OBJECT-TYPE
259 "Count of resource local flush operations."
260 ::= { hastResourceEntry 16 }
262 hastResourceActivemapUpdates OBJECT-TYPE
267 "Count of resource local activemap updates."
268 ::= { hastResourceEntry 17 }
270 hastResourceReadErrors OBJECT-TYPE
275 "Count of resource local read operations that failed."
276 ::= { hastResourceEntry 18 }
278 hastResourceWriteErrors OBJECT-TYPE
283 "Count of resource local write operations that failed."
284 ::= { hastResourceEntry 19 }
286 hastResourceDeleteErrors OBJECT-TYPE
291 "Count of resource local delete operations that failed."
292 ::= { hastResourceEntry 20 }
294 hastResourceFlushErrors OBJECT-TYPE
299 "Count of resource local flush operations that failed."
300 ::= { hastResourceEntry 21 }
302 hastResourceWorkerPid OBJECT-TYPE
308 ::= { hastResourceEntry 22 }