blob: e08cae8a598c31862f395cb0d2b7201042cd12bf [file] [log] [blame]
Ed Tanous118b1c72018-09-13 13:45:51 -07001{
Gunnar Mills262d7d42021-01-20 16:28:41 -06002 "$id": "http://redfish.dmtf.org/schemas/v1/Redundancy.v1_4_0.json",
Ed Tanous530520e2019-01-02 13:41:37 -08003 "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
Gunnar Millsa778c022020-05-12 12:20:36 -05004 "copyright": "Copyright 2014-2020 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
Ed Tanous118b1c72018-09-13 13:45:51 -07005 "definitions": {
6 "Actions": {
7 "additionalProperties": false,
Gunnar Millsa778c022020-05-12 12:20:36 -05008 "description": "The available actions for this resource.",
9 "longDescription": "This type shall contain the available actions for this resource.",
Ed Tanous118b1c72018-09-13 13:45:51 -070010 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -070011 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Ed Tanous118b1c72018-09-13 13:45:51 -070012 "description": "This property shall specify a valid odata or Redfish property.",
13 "type": [
14 "array",
15 "boolean",
Ed Tanous530520e2019-01-02 13:41:37 -080016 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -070017 "number",
18 "null",
19 "object",
20 "string"
21 ]
22 }
23 },
24 "properties": {
25 "Oem": {
Ed Tanous530520e2019-01-02 13:41:37 -080026 "$ref": "#/definitions/OemActions",
Gunnar Millsa778c022020-05-12 12:20:36 -050027 "description": "The available OEM-specific actions for this resource.",
28 "longDescription": "This property shall contain the available OEM-specific actions for this resource.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -060029 "versionAdded": "v1_2_0"
Ed Tanous118b1c72018-09-13 13:45:51 -070030 }
31 },
32 "type": "object"
33 },
34 "OemActions": {
35 "additionalProperties": true,
Gunnar Millsa778c022020-05-12 12:20:36 -050036 "description": "The available OEM-specific actions for this resource.",
37 "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
Ed Tanous118b1c72018-09-13 13:45:51 -070038 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -070039 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Ed Tanous118b1c72018-09-13 13:45:51 -070040 "description": "This property shall specify a valid odata or Redfish property.",
41 "type": [
42 "array",
43 "boolean",
Ed Tanous530520e2019-01-02 13:41:37 -080044 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -070045 "number",
46 "null",
47 "object",
48 "string"
49 ]
50 }
51 },
52 "properties": {},
53 "type": "object"
54 },
55 "Redundancy": {
56 "additionalProperties": false,
Ed Tanouscb103132019-10-08 11:34:22 -070057 "description": "The common redundancy definition and structure used in other Redfish schemas.",
58 "longDescription": "This object represents the redundancy element property.",
Ed Tanous118b1c72018-09-13 13:45:51 -070059 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -070060 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Ed Tanous118b1c72018-09-13 13:45:51 -070061 "description": "This property shall specify a valid odata or Redfish property.",
62 "type": [
63 "array",
64 "boolean",
Ed Tanous530520e2019-01-02 13:41:37 -080065 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -070066 "number",
67 "null",
68 "object",
69 "string"
70 ]
71 }
72 },
73 "properties": {
Ed Tanous530520e2019-01-02 13:41:37 -080074 "@odata.id": {
Ed Tanouscb103132019-10-08 11:34:22 -070075 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
Ed Tanous530520e2019-01-02 13:41:37 -080076 },
Ed Tanous118b1c72018-09-13 13:45:51 -070077 "Actions": {
78 "$ref": "#/definitions/Actions",
Gunnar Millsa778c022020-05-12 12:20:36 -050079 "description": "The available actions for this resource.",
80 "longDescription": "This property shall contain the available actions for this resource.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -060081 "versionAdded": "v1_2_0"
Ed Tanous118b1c72018-09-13 13:45:51 -070082 },
83 "MaxNumSupported": {
Ed Tanouscb103132019-10-08 11:34:22 -070084 "description": "The maximum number of members allowable for this particular redundancy group.",
85 "longDescription": "This property shall contain the maximum number of members allowed in the redundancy group.",
Ed Tanous118b1c72018-09-13 13:45:51 -070086 "readonly": true,
87 "type": [
Ed Tanous530520e2019-01-02 13:41:37 -080088 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -070089 "null"
90 ]
91 },
92 "MemberId": {
Ed Tanouscb103132019-10-08 11:34:22 -070093 "description": "The identifier for the member within the collection.",
94 "longDescription": "This property shall uniquely identify the member within the collection. For services supporting Redfish v1.6 or higher, this value shall contain the zero-based array index.",
Ed Tanous118b1c72018-09-13 13:45:51 -070095 "readonly": true,
96 "type": "string"
97 },
98 "MinNumNeeded": {
Gunnar Millsa778c022020-05-12 12:20:36 -050099 "description": "The minimum number of members needed for this group to be redundant.",
Ed Tanouscb103132019-10-08 11:34:22 -0700100 "longDescription": "This property shall contain the minimum number of members allowed in the redundancy group for the current redundancy mode to still be fault tolerant.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700101 "readonly": true,
102 "type": [
Ed Tanous530520e2019-01-02 13:41:37 -0800103 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -0700104 "null"
105 ]
106 },
107 "Mode": {
108 "anyOf": [
109 {
110 "$ref": "#/definitions/RedundancyMode"
111 },
112 {
113 "type": "null"
114 }
115 ],
Ed Tanouscb103132019-10-08 11:34:22 -0700116 "description": "The redundancy mode of the group.",
117 "longDescription": "This property shall contain the information about the redundancy mode of this subsystem.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700118 "readonly": false
119 },
120 "Name": {
Gunnar Millsa778c022020-05-12 12:20:36 -0500121 "description": "The name of the resource or array member.",
122 "longDescription": "This object represents the name of this resource or array member. The resource values shall comply with the Redfish Specification-described requirements. This string value shall be of the 'Name' reserved word format.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700123 "readonly": true,
124 "type": "string"
125 },
126 "Oem": {
127 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
Ed Tanouscb103132019-10-08 11:34:22 -0700128 "description": "The OEM extension property.",
129 "longDescription": "This property shall contain the OEM extensions. All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
Ed Tanous118b1c72018-09-13 13:45:51 -0700130 },
131 "RedundancyEnabled": {
Ed Tanouscb103132019-10-08 11:34:22 -0700132 "description": "An indication of whether redundancy is enabled.",
133 "longDescription": "This property shall indicate whether the redundancy is enabled.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700134 "readonly": false,
135 "type": [
136 "boolean",
137 "null"
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600138 ],
139 "versionAdded": "v1_1_0"
Ed Tanous118b1c72018-09-13 13:45:51 -0700140 },
141 "RedundancySet": {
Ed Tanouscb103132019-10-08 11:34:22 -0700142 "description": "The links to components of this redundancy set.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700143 "items": {
Ed Tanouscb103132019-10-08 11:34:22 -0700144 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/idRef"
Ed Tanous118b1c72018-09-13 13:45:51 -0700145 },
Ed Tanouscb103132019-10-08 11:34:22 -0700146 "longDescription": "This property shall contain the links to components that are part of this redundancy set.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700147 "readonly": true,
148 "type": "array"
149 },
150 "RedundancySet@odata.count": {
Ed Tanouscb103132019-10-08 11:34:22 -0700151 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
Ed Tanous118b1c72018-09-13 13:45:51 -0700152 },
153 "Status": {
Ed Tanous530520e2019-01-02 13:41:37 -0800154 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
Gunnar Millsa778c022020-05-12 12:20:36 -0500155 "description": "The status and health of the resource and its subordinate or dependent resources.",
156 "longDescription": "This property shall contain any status or health properties of the resource."
Ed Tanous118b1c72018-09-13 13:45:51 -0700157 }
158 },
159 "required": [
160 "Name",
161 "Mode",
Ed Tanous118b1c72018-09-13 13:45:51 -0700162 "MinNumNeeded",
163 "Status",
Ed Tanous530520e2019-01-02 13:41:37 -0800164 "RedundancySet",
165 "@odata.id",
166 "MemberId"
Ed Tanous118b1c72018-09-13 13:45:51 -0700167 ],
168 "type": "object"
169 },
170 "RedundancyMode": {
171 "enum": [
172 "Failover",
173 "N+m",
174 "Sharing",
175 "Sparing",
176 "NotRedundant"
177 ],
178 "enumDescriptions": {
Ed Tanouscb103132019-10-08 11:34:22 -0700179 "Failover": "Failure of one unit automatically causes a standby or offline unit in the redundancy set to take over its functions.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700180 "N+m": "Multiple units are available and active such that normal operation will continue if one or more units fail.",
181 "NotRedundant": "The subsystem is not configured in a redundancy mode, either due to configuration or the functionality has been disabled by the user.",
182 "Sharing": "Multiple units contribute or share such that operation will continue, but at a reduced capacity, if one or more units fail.",
183 "Sparing": "One or more spare units are available to take over the function of a failed unit, but takeover is not automatic."
184 },
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600185 "enumVersionAdded": {
186 "NotRedundant": "v1_3_0"
187 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700188 "type": "string"
Gunnar Mills262d7d42021-01-20 16:28:41 -0600189 },
190 "RedundancyType": {
191 "enum": [
192 "Failover",
193 "NPlusM",
194 "Sharing",
195 "Sparing",
196 "NotRedundant"
197 ],
198 "enumDescriptions": {
199 "Failover": "Failure of one unit automatically causes a standby or offline unit in the redundancy set to take over its functions.",
200 "NPlusM": "Multiple units are available and active such that normal operation will continue if one or more units fail.",
201 "NotRedundant": "The subsystem is not configured in a redundancy mode, either due to configuration or the functionality has been disabled by the user.",
202 "Sharing": "Multiple units contribute or share such that operation will continue, but at a reduced capacity, if one or more units fail.",
203 "Sparing": "One or more spare units are available to take over the function of a failed unit, but takeover is not automatic."
204 },
205 "enumLongDescriptions": {
206 "Failover": "This value shall indicate that a failure of one unit automatically causes a standby or offline unit in the redundancy set to take over its functions.",
207 "NPlusM": "This value shall indicate that the capacity or services provided by the set of N+M devices can withstand failure of up to M units, with all units in the group normally providing capacity or service."
208 },
209 "type": "string"
210 },
211 "RedundantGroup": {
212 "additionalProperties": false,
213 "description": "The redundancy information for the devices in a redundancy group.",
214 "longDescription": "This type shall contain redundancy information for the set of devices in this redundancy group.",
215 "patternProperties": {
216 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
217 "description": "This property shall specify a valid odata or Redfish property.",
218 "type": [
219 "array",
220 "boolean",
221 "integer",
222 "number",
223 "null",
224 "object",
225 "string"
226 ]
227 }
228 },
229 "properties": {
230 "MaxSupportedInGroup": {
231 "description": "The maximum number of devices supported in this redundancy group.",
232 "longDescription": "This property shall contain the maximum number of devices allowed in the redundancy group.",
233 "readonly": true,
234 "type": [
235 "integer",
236 "null"
237 ],
238 "versionAdded": "v1_4_0"
239 },
240 "MinNeededInGroup": {
241 "description": "The minimum number of devices needed for this group to be redundant.",
242 "longDescription": "This property shall contain the minimum number of functional devices needed in the redundancy group for the current redundancy mode to be fault tolerant.",
243 "readonly": true,
244 "type": [
245 "integer",
246 "null"
247 ],
248 "versionAdded": "v1_4_0"
249 },
250 "RedundancyGroup": {
251 "description": "The links to the devices included in this redundancy group.",
252 "items": {
253 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Resource"
254 },
255 "longDescription": "This property shall contain the links to the resources that represent the devices that are part of this redundancy group.",
256 "readonly": true,
257 "type": "array",
258 "versionAdded": "v1_4_0"
259 },
260 "RedundancyGroup@odata.count": {
261 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
262 },
263 "RedundancyType": {
264 "anyOf": [
265 {
266 "$ref": "#/definitions/RedundancyType"
267 },
268 {
269 "type": "null"
270 }
271 ],
272 "description": "The redundancy mode of the group.",
273 "longDescription": "This property shall contain the information about the redundancy mode of this redundancy group.",
274 "readonly": true,
275 "versionAdded": "v1_4_0"
276 },
277 "Status": {
278 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
279 "description": "The status and health of the resource and its subordinate or dependent resources.",
280 "longDescription": "This property shall contain any status or health properties of the resource.",
281 "versionAdded": "v1_4_0"
282 }
283 },
284 "required": [
285 "RedundancyType",
286 "MinNeededInGroup",
287 "Status",
288 "RedundancyGroup"
289 ],
290 "type": "object"
Ed Tanous118b1c72018-09-13 13:45:51 -0700291 }
292 },
Ed Tanous530520e2019-01-02 13:41:37 -0800293 "owningEntity": "DMTF",
Gunnar Mills262d7d42021-01-20 16:28:41 -0600294 "release": "2020.4",
295 "title": "#Redundancy.v1_4_0"
Ed Tanous118b1c72018-09-13 13:45:51 -0700296}