idnits 2.17.1 draft-ietf-opsawg-vmm-mib-04.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (August 5, 2015) is 3186 days in the past. Is this intentional? -- Found something which looks like a code comment -- if you have code sections in the document, please surround them with '' and '' lines. Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) ** Obsolete normative reference: RFC 5226 (Obsoleted by RFC 8126) Summary: 1 error (**), 0 flaws (~~), 1 warning (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 OPSAWG H. Asai 3 Internet-Draft Univ. of Tokyo 4 Intended status: Standards Track M. MacFaden 5 Expires: February 6, 2016 VMware Inc. 6 J. Schoenwaelder 7 Jacobs University 8 K. Shima 9 IIJ Innovation Institute Inc. 10 T. Tsou 11 Huawei Technologies (USA) 12 August 5, 2015 14 Management Information Base for Virtual Machines Controlled by a 15 Hypervisor 16 draft-ietf-opsawg-vmm-mib-04 18 Abstract 20 This document defines a portion of the Management Information Base 21 (MIB) for use with network management protocols in the Internet 22 community. In particular, this specifies objects for managing 23 virtual machines controlled by a hypervisor (a.k.a. virtual machine 24 monitor). 26 Status of This Memo 28 This Internet-Draft is submitted in full conformance with the 29 provisions of BCP 78 and BCP 79. 31 Internet-Drafts are working documents of the Internet Engineering 32 Task Force (IETF). Note that other groups may also distribute 33 working documents as Internet-Drafts. The list of current Internet- 34 Drafts is at http://datatracker.ietf.org/drafts/current/. 36 Internet-Drafts are draft documents valid for a maximum of six months 37 and may be updated, replaced, or obsoleted by other documents at any 38 time. It is inappropriate to use Internet-Drafts as reference 39 material or to cite them other than as "work in progress." 41 This Internet-Draft will expire on February 6, 2016. 43 Copyright Notice 45 Copyright (c) 2015 IETF Trust and the persons identified as the 46 document authors. All rights reserved. 48 This document is subject to BCP 78 and the IETF Trust's Legal 49 Provisions Relating to IETF Documents 50 (http://trustee.ietf.org/license-info) in effect on the date of 51 publication of this document. Please review these documents 52 carefully, as they describe your rights and restrictions with respect 53 to this document. Code Components extracted from this document must 54 include Simplified BSD License text as described in Section 4.e of 55 the Trust Legal Provisions and are provided without warranty as 56 described in the Simplified BSD License. 58 Table of Contents 60 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 61 2. The Internet-Standard Management Framework . . . . . . . . . 3 62 3. Overview and Objectives . . . . . . . . . . . . . . . . . . . 3 63 4. Structure of the VM-MIB Module . . . . . . . . . . . . . . . 5 64 5. Relationship to Other MIB Modules . . . . . . . . . . . . . . 7 65 6. Definitions . . . . . . . . . . . . . . . . . . . . . . . . . 8 66 6.1. VM-MIB . . . . . . . . . . . . . . . . . . . . . . . . . 8 67 6.2. IANA-STORAGE-MEDIA-TYPE-MIB . . . . . . . . . . . . . . . 43 68 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 44 69 8. Security Considerations . . . . . . . . . . . . . . . . . . . 44 70 9. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 46 71 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 46 72 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 46 73 11.1. Normative References . . . . . . . . . . . . . . . . . . 46 74 11.2. Informative References . . . . . . . . . . . . . . . . . 48 75 Appendix A. State Transition Table . . . . . . . . . . . . . . . 48 76 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 50 78 1. Introduction 80 This document defines a portion of the Management Information Base 81 (MIB) for use with network management protocols in the Internet 82 community. In particular, this specifies objects for managing 83 virtual machines controlled by a hypervisor (a.k.a. virtual machine 84 monitor). A hypervisor controls multiple virtual machines on a 85 single physical machine by allocating resources to each virtual 86 machine using virtualization technologies. Therefore, this MIB 87 module contains information on virtual machines and their resources 88 controlled by a hypervisor as well as hypervisor's hardware and 89 software information. 91 The design of this MIB module has been derived from product-specific 92 MIB modules, namely a MIB module for managing guests of the Xen 93 hypervisor, a MIB module for managing virtual machines controlled by 94 the VMware hypervisor, and a MIB module using the libvirt programming 95 interface to access different hypervisors. However, this MIB module 96 attempts to generalize the managed objects to support other 97 implementations of hypervisors. 99 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 100 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 101 document are to be interpreted as described in RFC 2119 [RFC2119]. 103 2. The Internet-Standard Management Framework 105 For a detailed overview of the documents that describe the current 106 Internet-Standard Management Framework, please refer to section 7 of 107 RFC 3410 [RFC3410]. Managed objects are accessed via a virtual 108 information store, termed the Management Information Base or MIB. 109 MIB objects are generally accessed through the Simple Network 110 Management Protocol (SNMP). Objects in the MIB are defined using the 111 mechanisms defined in the Structure of Management Information (SMI). 112 This memo specifies a MIB module that is compliant to the SMIv2, 113 which is described in STD 58, RFC 2578 [RFC2578], STD 58, RFC 2579 114 [RFC2579] and STD 58, RFC 2580 [RFC2580]. 116 3. Overview and Objectives 118 This document defines a portion of MIB for the management of virtual 119 machines controlled by a hypervisor. This MIB module consists of the 120 managed objects related to system and software information of a 121 hypervisor, the list of virtual machines controlled by the 122 hypervisor, and information of virtual resources allocated to virtual 123 machines by the hypervisor. This document specifies four specific 124 types of virtual resources that are common to many hypervisor 125 implementations; processors (CPUs), memory, network interfaces 126 (NICs), and storage devices. These managed objects are independent 127 of the families of hypervisors or operating systems running on 128 virtual machines. 130 +------------------------------------------------------------------+ 131 | +-------------------------------------------------+ | 132 | | Virtual machine | | 133 | | | | 134 | | +---------+ +---------+ +---------+ +---------+ | ....... | 135 | | | Virtual | | Virtual | | Virtual | | Virtual | | | 136 | +-| CPU |-| memory |-| storage |-| NIC |-+ | 137 | +---------+ +---------+ +---------+ +---------+ | 138 | Virtual resources | 139 | ^ | 140 | | Allocation using virtualization technologies | 141 | | | 142 | +-- Physical resources ._____. | 143 | +--------+ .--------. / \ +--^--+ | 144 +- - - - - - - | | - /________/| - *\_______/* - | | - -+ 145 | Hypervisor | CPU | | Memory |/ | Storage | | NIC | | 146 | +--------+ +--------+ \_______/ +-----+ | 147 | +-----------------------+ | 148 | || MIB objects || | 149 | +-----------------------+ | 150 +------------------------------------------------------------------+ 152 A hypervisor allocates virtual resources such as virtual CPUs, 153 virtual memory, virtual storage devices, and virtual network 154 interfaces to virtual machines from physical resources. 156 Figure 1: An example of a virtualization environment 158 On the common implementations of hypervisors, a hypervisor allocates 159 virtual resources from physical resources; virtual CPUs, virtual 160 memory, virtual storage devices, and virtual network interfaces to 161 virtual machines as shown in Figure 1. Since the virtual resources 162 allocated to virtual machines are managed by the hypervisor, the MIB 163 objects are managed at the hypervisor. In case that the objects are 164 accessed through the SNMP, an SNMP agent is launched at the 165 hypervisor to provide access to the objects. 167 The objects are managed from the viewpoint of the operators of 168 hypervisors, but not the operators of virtual machines; i.e., the 169 objects do not take into account the actual resource utilization on 170 each virtual machine but the resource allocation from the physical 171 resources. For example, vmNetworkIfIndex indicates the virtual 172 interface associated with an interface of a virtual machine at the 173 hypervisor, and consequently, the 'in' and 'out' directions denote 174 'from a virtual machine to the hypervisor' and 'from the hypervisor 175 to a virtual machine', respectively. Moreover, 176 vmStorageAllocatedSize denotes the size allocated by the hypervisor, 177 but not the size actually used by the operating system on the virtual 178 machine. This means that vmStorageDefinedSize and 179 vmStorageAllocatedSize do not take different values when the 180 vmStorageSourceType is 'block' or 'raw'. 182 The objectives of this document are the followings: 1) This document 183 defines the MIB objects common to many hypervisors for the management 184 of virtual machines controlled by a hypervisor. 2) This document 185 clarifies the relationship with other MIB modules for managing host 186 computers and network devices. 188 4. Structure of the VM-MIB Module 190 The MIB module is organized into a group of scalars and tables. The 191 scalars below 'vmHypervisor' provide basic information about the 192 hypervisor. The 'vmTable' lists the virtual machines (guests) that 193 are known to the hypervisor. The 'vmCpuTable' provides the mapping 194 table of virtual CPUs to virtual machines, including CPU time used by 195 each virtual CPU. The 'vmCpuAffinityTable' provides the affinity of 196 each virtual CPU to a physical CPU. The 'vmStorageTable' provides 197 the list of virtual storage devices and their mapping to virtual 198 machines. In case that an entry in the 'vmStorageTable' has a 199 corresponding parent physical storage device managed in 200 'vmStorageTable' of HOST-RESOURCES-MIB [RFC2790], the entry contains 201 a pointer 'vmStorageParent' to the physical storage device. The 202 'vmNetworkTable' provides the list of virtual network interfaces and 203 their mapping to virtual machines. Each entry in the 204 'vmNetworkTable' also provides a pointer 'vmNetworkIfIndex' to the 205 corresponding entry in the 'ifTable' of IF-MIB [RFC2863]. In case 206 that an entry in the 'vmNetworkTable' has a corresponding parent 207 physical network interface managed in the 'ifTable' of IF-MIB, the 208 entry contains a pointer 'vmNetworkParent' to the physical network 209 interface. 211 Notation: 213 +-------------+ 214 | vmOperState | : Finite state; the first line presents the 215 | | 'vmOperState', and the second line presents a 216 +-------------+ notification generated if applicable. 218 + - - - - - - + 219 | vmOperState | : Transient state; first line presents the 220 | | 'vmOperState', and the second line presents a 221 + - - - - - - + notification generated if applicable. 223 ! : Notification; a text followed by the symbol "!" 224 denotes a notification generated. 226 ===================================================================== 228 +---------------+ + - - - - - - - -+ +------------+ 229 | suspended(6) |<--| suspending(5) | | paused(8) | 230 | !vmSuspended | | !vmSuspending | | !vmPaused | 231 +---------------+ + - - - - - - - -+ +------------+ 232 | ^ ^ 233 | | | 234 v | | 235 + - - - - - - -+ +-------------+<----------+ + - - - - - - - + 236 | resuming(7) |-->| running(4) |<-------------->| migrating(9) | 237 | !vmResuming | | !vmRunning | | !vmMigrating | 238 + - - - - - - -+ +-------------+ + - - - - - - - + 239 | ^ ^ 240 | | | 241 | +-------------------+ | 242 | | | 243 v v v 244 + - - - - - - - - - + +---------------+ 245 | shuttingdown(10) |--------->| shutdown(11) | 246 | !vmShuttingdown | | !vmShutdown | 247 + - - - - - - - - - + +---------------+ 248 ^ | 249 | v !vmDeleted 250 +--------------+ + - - - - - - - -+ (Deleted from 251 | crashed(12) | | preparing(3) | vmTable) 252 | !vmCrashed | | | 253 +--------------+ + - - - - - - - -+ 255 The overview of the state transition of a virtual machine 257 Figure 2: State transition of a virtual machine 259 The 'vmAdminState' and 'vmOperState' textual conventions define an 260 administrative state and an operational state model for virtual 261 machines. Events causing transitions between major operational 262 states will cause the generation of notifications. Per virtual 263 machine (per-VM) notifications (vmRunning, vmShutdown, vmPaused, 264 vmSuspended, vmCrashed, vmDeleted) are generated if 265 vmPerVMNotificationsEnabled is true(1). Bulk notifications 266 (vmBulkRunning, vmBulkShutdown, vmBulkPaused, vmBulkSuspended, 267 vmBulkCrashed, vmBulkDeleted) are generated if 268 vmBulkNotificationsEnabled is true(1). The overview of the 269 transition of 'vmOperState' by the write access to 'vmAdminState' and 270 the notifications generated by the operational state changes are 271 illustrated in Figure 2. The detailed state transition is summarized 272 in Appendix A. Note that the notifications shown in this figure are 273 per-VM notifications. In the case of Bulk notifications, the prefix 274 'vm' is replaced with 'vmBulk'. 276 The bulk notification mechanism is designed to reduce the number of 277 notifications that are trapped by an SNMP manager. This is because 278 the number of virtual machines managed by a bunch of hypervisors in a 279 datacenter possibly becomes several thousands or more, and 280 consequently, many notifications could be trapped if these virtual 281 machines frequently change their administrative state. The per-VM 282 notifications carry more detailed information, but the scalability is 283 a problem. The notification filtering mechanism described in section 284 6 of RFC 3413 [RFC3413] is used by the management applications to 285 control the notifications. 287 5. Relationship to Other MIB Modules 289 The HOST-RESOURCES-MIB [RFC2790] defines the MIB objects for managing 290 host systems. On systems implementing the HOST-RESOURCES-MIB, the 291 objects of HOST-RESOURCES-MIB indicate resources of a hypervisor. 292 Some objects of HOST-RESOURCES-MIB are used to indicate physical 293 resources through indexes. On systems implementing HOST-RESOURCES- 294 MIB, the 'vmCpuPhysIndex' points to the processor's 'hrDeviceIndex' 295 in the 'hrProcessorTable'. The 'vmStorageParent' also points to the 296 storage device's 'hrStorageIndex' in the 'hrStorageTable'. 298 The IF-MIB [RFC2863] defines the MIB objects for managing network 299 interfaces. Both physical and virtual network interfaces are 300 required to be contained in the 'ifTable' of IF-MIB. The virtual 301 network interfaces in the 'ifTable' of IF-MIB are pointed from the 302 'vmNetworkTable' defined in this document through a pointer 303 'vmNetworkIfIndex'. In case that an entry in the 'vmNetworkTable' 304 has a corresponding parent physical network interface managed in the 305 'ifTable' of IF-MIB, the entry contains a pointer 'vmNetworkParent' 306 to the physical network interface. 308 The objects related to virtual switches are not included in the MIB 309 module defined in this document though virtual switches MAY be placed 310 on a hypervisor. This is because the virtual network interfaces are 311 the lowest abstraction of network resources allocated to a virtual 312 machine. Instead of including the objects related to virtual 313 switches, for example, IEEE8021-BRIDGE-MIB [IEEE8021-BRIDGE-MIB] and 314 IEEE8021-Q-BRIDGE-MIB [IEEE8021-Q-BRIDGE-MIB] could be used. 316 The other objects related to virtual machines such as management IP 317 addresses of a virtual machine are not included in this MIB module 318 because this MIB module defines the objects common to general 319 hypervisors but they are specific to some hypervisors. They may be 320 included in the entLogicalTable of ENTITY-MIB [RFC6933]. 322 6. Definitions 324 6.1. VM-MIB 326 VM-MIB DEFINITIONS ::= BEGIN 328 IMPORTS 329 MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, TimeTicks, 330 Counter64, Integer32, mib-2 331 FROM SNMPv2-SMI 332 OBJECT-GROUP, MODULE-COMPLIANCE, NOTIFICATION-GROUP 333 FROM SNMPv2-CONF 334 TEXTUAL-CONVENTION, PhysAddress, TruthValue 335 FROM SNMPv2-TC 336 SnmpAdminString 337 FROM SNMP-FRAMEWORK-MIB 338 UUIDorZero 339 FROM UUID-TC-MIB 340 InterfaceIndexOrZero 341 FROM IF-MIB 342 IANAStorageMediaType 343 FROM IANA-STORAGE-MEDIA-TYPE-MIB; 345 vmMIB MODULE-IDENTITY 346 LAST-UPDATED "201508050000Z" -- 5 August 2015 347 ORGANIZATION "IETF Operations and Management Area Working Group" 348 CONTACT-INFO 349 " 350 WG E-mail: opsawg@ietf.org 351 Mailing list subscription info: 352 https://www.ietf.org/mailman/listinfo/opsawg 354 Hirochika Asai 355 The University of Tokyo 356 7-3-1 Hongo 357 Bunkyo-ku, Tokyo 113-8656 358 JP 359 Phone: +81 3 5841 6748 360 Email: panda@hongo.wide.ad.jp 362 Michael MacFaden 363 VMware Inc. 364 Email: mrm@vmware.com 366 Juergen Schoenwaelder 367 Jacobs University 368 Campus Ring 1 369 Bremen 28759 370 Germany 371 Email: j.schoenwaelder@jacobs-university.de 373 Keiichi Shima 374 IIJ Innovation Institute Inc. 375 3-13 Kanda-Nishikicho 376 Chiyoda-ku, Tokyo 101-0054 377 JP 378 Email: keiichi@iijlab.net 380 Tina Tsou 381 Huawei Technologies (USA) 382 2330 Central Expressway 383 Santa Clara CA 95050 384 USA 385 Email: tina.tsou.zouting@huawei.com 386 " 388 DESCRIPTION 389 "This MIB module is for use in managing a hypervisor and 390 virtual machines controlled by the hypervisor. 392 Copyright (c) 2015 IETF Trust and the persons identified 393 as authors of the code. All rights reserved. 395 Redistribution and use in source and binary forms, with 396 or without modification, is permitted pursuant to, and 397 subject to the license terms contained in, the 398 Simplified BSD License set forth in Section 4.c of the 399 IETF Trust's Legal Provisions Relating to IETF Documents 400 (http://trustee.ietf.org/license-info)." 402 REVISION "201508050000Z" -- 5 August 2015 403 DESCRIPTION 404 "The initial version of this MIB, published as 405 RFCXXXX." 406 ::= { mib-2 yyy } 408 -- RFC Ed.: replace XXXX with RFC number and remove this note 409 -- RFC Ed.: replace yyy with actual number and remove this note 411 vmNotifications OBJECT IDENTIFIER ::= { vmMIB 0 } 412 vmObjects OBJECT IDENTIFIER ::= { vmMIB 1 } 413 vmConformance OBJECT IDENTIFIER ::= { vmMIB 2 } 415 -- Textual conversion definitions 416 -- 417 VirtualMachineIndex ::= TEXTUAL-CONVENTION 418 DISPLAY-HINT "d" 419 STATUS current 420 DESCRIPTION 421 "A unique value, greater than zero, identifying a 422 virtual machine. The value for each virtual machine 423 MUST remain constant at least from one re-initialization 424 of the hypervisor to the next re-initialization." 425 SYNTAX Integer32 (1..2147483647) 427 VirtualMachineIndexOrZero ::= TEXTUAL-CONVENTION 428 DISPLAY-HINT "d" 429 STATUS current 430 DESCRIPTION 431 "This textual convention is an extension of the 432 VirtualMachineIndex convention. This extension permits 433 the additional value of zero. The meaning of the value 434 zero is object-specific and MUST therefore be defined as 435 part of the description of any object which uses this 436 syntax. Examples of the usage of zero might include 437 situations where a virtual machine is unknown, or when 438 none or all virtual machines need to be referenced." 439 SYNTAX Integer32 (0..2147483647) 441 VirtualMachineAdminState ::= TEXTUAL-CONVENTION 442 STATUS current 443 DESCRIPTION 444 "The administrative state of a virtual machine: 446 running(1) The administrative state of the virtual 447 machine indicating the virtual machine 448 is currently online or should be brought 449 online. 451 suspended(2) The administrative state of the virtual 452 machine where its memory and CPU execution 453 state has been saved to persistent store 454 and will be restored at next running(1). 456 paused(3) The administrative state indicating the 457 virtual machine is resident in memory but 458 is no longer scheduled to execute by the 459 hypervisor. 461 shutdown(4) The administrative state of the virtual 462 machine indicating the virtual machine 463 is currently offline or should be taken 464 shutting down." 465 SYNTAX INTEGER { 466 running(1), 467 suspended(2), 468 paused(3), 469 shutdown(4) 470 } 472 VirtualMachineOperState ::= TEXTUAL-CONVENTION 473 STATUS current 474 DESCRIPTION 475 "The operational state of a virtual machine: 477 unknown(1) The operational state of the virtual 478 machine is unknown, e.g., because the 479 implementation failed to obtain the state 480 from the hypervisor. 482 other(2) The operational state of the virtual 483 machine indicating that an operational 484 state is obtained from the hypervisor but 485 it is not a state defined in this MIB 486 module. 488 preparing(3) The operational state of the virtual 489 machine indicating the virtual machine is 490 currently in the process of preparation, 491 e.g., allocating and initializing virtual 492 storage after creating (defining) virtual 493 machine. 495 running(4) The operational state of the virtual 496 machine indicating the virtual machine is 497 currently executed but it is not in the 498 process of preparing(3), suspending(5), 499 resuming(7), migrating(9), and 500 shuttingdown(10). 502 suspending(5) The operational state of the virtual 503 machine indicating the virtual machine is 504 currently in the process of suspending 505 to save its memory and CPU execution 506 state to persistent store. This is a 507 transient state from running(4) to 508 suspended(6). 510 suspended(6) The operational state of the virtual 511 machine indicating the virtual machine is 512 currently suspended, which means the 513 memory and CPU execution state of the 514 virtual machine are saved to persistent 515 store. During this state, the virtual 516 machine is not scheduled to execute by 517 the hypervisor. 519 resuming(7) The operational state of the virtual 520 machine indicating the virtual machine is 521 currently in the process of resuming 522 to restore its memory and CPU execution 523 state from persistent store. This is a 524 transient state from suspended(6) to 525 running(4). 527 paused(8) The operational state of the virtual 528 machine indicating the virtual machine is 529 resident in memory but no longer 530 scheduled to execute by the hypervisor. 532 migrating(9) The operational state of the virtual 533 machine indicating the virtual machine is 534 currently in the process of migration 535 from/to another hypervisor. 537 shuttingdown(10) 538 The operational state of the virtual 539 machine indicating the virtual machine is 540 currently in the process of shutting 541 down. This is a transient state from 542 running(4) to shutdown(11). 544 shutdown(11) The operational state of the virtual 545 machine indicating the virtual machine is 546 down, and CPU execution is no longer 547 scheduled by the hypervisor and its 548 memory is not resident in the hypervisor. 550 crashed(12) The operational state of the virtual 551 machine indicating the virtual machine 552 has crashed." 553 SYNTAX INTEGER { 554 unknown(1), 555 other(2), 556 preparing(3), 557 running(4), 558 suspending(5), 559 suspended(6), 560 resuming(7), 561 paused(8), 562 migrating(9), 563 shuttingdown(10), 564 shutdown(11), 565 crashed(12) 566 } 568 VirtualMachineAutoStart ::= TEXTUAL-CONVENTION 569 STATUS current 570 DESCRIPTION 571 "The autostart configuration of a virtual machine: 573 unknown(1) The autostart configuration is unknown, 574 e.g., because the implementation failed 575 to obtain the autostart configuration 576 from the hypervisor. 578 enabled(2) The autostart configuration of the 579 virtual machine is enabled. The virtual 580 machine should be automatically brought 581 online at the next re-initialization of 582 the hypervisor. 584 disabled(3) The autostart configuration of the 585 virtual machine is disabled. The virtual 586 machine should not be automatically 587 brought online at the next 588 re-initialization of the hypervisor." 589 SYNTAX INTEGER { 590 unknown(1), 591 enabled(2), 592 disabled(3) 593 } 595 VirtualMachinePersistent ::= TEXTUAL-CONVENTION 596 STATUS current 597 DESCRIPTION 598 "This value indicates whether a virtual machine has a 599 persistent configuration which means the virtual machine 600 will still exist after shutting down: 602 unknown(1) The persistent configuration is unknown, 603 e.g., because the implementation failed 604 to obtain the persistent configuration 605 from the hypervisor. (read-only) 607 persistent(2) The virtual machine is persistent, i.e., 608 the virtual machine will exist after its 609 shutting down. 611 transient(3) The virtual machine is transient, i.e., 612 the virtual machine will not exist after 613 its shutting down." 614 SYNTAX INTEGER { 615 unknown(1), 616 persistent(2), 617 transient(3) 618 } 620 VirtualMachineCpuIndex ::= TEXTUAL-CONVENTION 621 DISPLAY-HINT "d" 622 STATUS current 623 DESCRIPTION 624 "A unique value for each virtual machine, greater than 625 zero, identifying a virtual CPU assigned to a virtual 626 machine. The value for each virtual CPU MUST remain 627 constant at least from one re-initialization of the 628 hypervisor to the next re-initialization." 629 SYNTAX Integer32 (1..2147483647) 631 VirtualMachineStorageIndex ::= TEXTUAL-CONVENTION 632 DISPLAY-HINT "d" 633 STATUS current 634 DESCRIPTION 635 "A unique value for each virtual machine, greater than 636 zero, identifying a virtual storage device allocated to 637 a virtual machine. The value for each virtual storage 638 device MUST remain constant at least from one 639 re-initialization of the hypervisor to the next 640 re-initialization." 641 SYNTAX Integer32 (1..2147483647) 643 VirtualMachineStorageSourceType ::= TEXTUAL-CONVENTION 644 STATUS current 645 DESCRIPTION 646 "The source type of a virtual storage device: 648 unknown(1) The source type is unknown, e.g., because 649 the implementation failed to obtain the 650 media type from the hypervisor. 652 other(2) The source type is other than those 653 defined in this conversion. 655 block(3) The source type is a block device. 657 raw(4) The source type is a raw-formatted file. 659 sparse(5) The source type is a sparse file. 661 network(6) The source type is a network device." 662 SYNTAX INTEGER { 663 unknown(1), 664 other(2), 665 block(3), 666 raw(4), 667 sparse(5), 668 network(6) 669 } 671 VirtualMachineStorageAccess ::= TEXTUAL-CONVENTION 672 STATUS current 673 DESCRIPTION 674 "The access permission of a virtual storage: 676 unknown(1) The access permission of the virtual 677 storage is unknown. 679 readwrite(2) The virtual storage is a read-write 680 device. 682 readonly(3) The virtual storage is a read-only 683 device." 684 SYNTAX INTEGER { 685 unknown(1), 686 readwrite(2), 687 readonly(3) 688 } 690 VirtualMachineNetworkIndex ::= TEXTUAL-CONVENTION 691 DISPLAY-HINT "d" 692 STATUS current 693 DESCRIPTION 694 "A unique value for each virtual machine, greater than 695 zero, identifying a virtual network interface allocated 696 to the virtual machine. The value for each virtual 697 network interface MUST remain constant at least from one 698 re-initialization of the hypervisor to the next 699 re-initialization." 700 SYNTAX Integer32 (1..2147483647) 702 VirtualMachineList ::= TEXTUAL-CONVENTION 703 DISPLAY-HINT "1x" 704 STATUS current 705 DESCRIPTION 706 "Each octet within this value specifies a set of eight 707 virtual machine vmIndex values, with the first octet 708 specifying virtual machine 1 through 8, the second octet 709 specifying virtual machine 9 through 16, etc. Within 710 each octet, the most significant bit represents the 711 lowest numbered vmIndex, and the least significant bit 712 represents the highest numbered vmIndex. Thus, each 713 virtual machine of the host is represented by a single 714 bit within the value of this object. If that bit has 715 a value of '1', then that virtual machine is included 716 in the set of virtual machines; the virtual machine is 717 not included if its bit has a value of '0'." 718 SYNTAX OCTET STRING 720 -- The hypervisor group 721 -- 722 -- A collection of objects common to all hypervisors. 723 -- 724 vmHypervisor OBJECT IDENTIFIER ::= { vmObjects 1 } 726 vmHvSoftware OBJECT-TYPE 727 SYNTAX SnmpAdminString (SIZE (0..255)) 728 MAX-ACCESS read-only 729 STATUS current 730 DESCRIPTION 731 "A textual description of the hypervisor software. This 732 value SHOULD NOT include its version as it SHOULD be 733 included in 'vmHvVersion'." 734 ::= { vmHypervisor 1 } 736 vmHvVersion OBJECT-TYPE 737 SYNTAX SnmpAdminString (SIZE (0..255)) 738 MAX-ACCESS read-only 739 STATUS current 740 DESCRIPTION 741 "A textual description of the version of the hypervisor 742 software." 743 ::= { vmHypervisor 2 } 745 vmHvObjectID OBJECT-TYPE 746 SYNTAX OBJECT IDENTIFIER 747 MAX-ACCESS read-only 748 STATUS current 749 DESCRIPTION 750 "The vendor's authoritative identification of the 751 hypervisor software contained in the entity. This value 752 is allocated within the SMI enterprises 753 subtree (1.3.6.1.4.1). Note that this is different from 754 sysObjectID in the SNMPv2-MIB [RFC3418] because 755 sysObjectID is not the identification of the hypervisor 756 software but the device, firmware, or management 757 operating system." 758 ::= { vmHypervisor 3 } 760 vmHvUpTime OBJECT-TYPE 761 SYNTAX TimeTicks 762 MAX-ACCESS read-only 763 STATUS current 764 DESCRIPTION 765 "The time (in centi-seconds) since the hypervisor was 766 last re-initialized. Note that this is different from 767 sysUpTime in the SNMPv2-MIB [RFC3418] and hrSystemUptime 768 in the HOST-RESOURCES-MIB [RFC2790] because sysUpTime is 769 the uptime of the network management portion of the 770 system, and hrSystemUptime is the uptime of the 771 management operating system but not the hypervisor 772 software." 773 ::= { vmHypervisor 4 } 775 -- The virtual machine information 776 -- 777 -- A collection of objects common to all virtual machines. 778 -- 779 vmNumber OBJECT-TYPE 780 SYNTAX Integer32 (0..2147483647) 781 MAX-ACCESS read-only 782 STATUS current 783 DESCRIPTION 784 "The number of virtual machines (regardless of their 785 current state) present on this hypervisor." 787 ::= { vmObjects 2 } 789 vmTableLastChange OBJECT-TYPE 790 SYNTAX TimeTicks 791 MAX-ACCESS read-only 792 STATUS current 793 DESCRIPTION 794 "The value of vmHvUpTime at the time of the last creation 795 or deletion of an entry in the vmTable." 796 ::= { vmObjects 3 } 798 vmTable OBJECT-TYPE 799 SYNTAX SEQUENCE OF VmEntry 800 MAX-ACCESS not-accessible 801 STATUS current 802 DESCRIPTION 803 "A list of virtual machine entries. The number of 804 entries is given by the value of vmNumber." 805 ::= { vmObjects 4 } 807 vmEntry OBJECT-TYPE 808 SYNTAX VmEntry 809 MAX-ACCESS not-accessible 810 STATUS current 811 DESCRIPTION 812 "An entry containing management information applicable 813 to a particular virtual machine." 814 INDEX { vmIndex } 815 ::= { vmTable 1 } 817 VmEntry ::= 818 SEQUENCE { 819 vmIndex VirtualMachineIndex, 820 vmName SnmpAdminString, 821 vmUUID UUIDorZero, 822 vmOSType SnmpAdminString, 823 vmAdminState VirtualMachineAdminState, 824 vmOperState VirtualMachineOperState, 825 vmAutoStart VirtualMachineAutoStart, 826 vmPersistent VirtualMachinePersistent, 827 vmCurCpuNumber Integer32, 828 vmMinCpuNumber Integer32, 829 vmMaxCpuNumber Integer32, 830 vmMemUnit Integer32, 831 vmCurMem Integer32, 832 vmMinMem Integer32, 833 vmMaxMem Integer32, 834 vmUpTime TimeTicks, 835 vmCpuTime Counter64 836 } 838 vmIndex OBJECT-TYPE 839 SYNTAX VirtualMachineIndex 840 MAX-ACCESS not-accessible 841 STATUS current 842 DESCRIPTION 843 "A unique value, greater than zero, identifying the 844 virtual machine. The value assigned to a given virtual 845 machine may not persist across re-initialization of the 846 hypervisor. A command generator MUST use the vmUUID to 847 identify a given virtual machine of interest." 848 ::= { vmEntry 1 } 850 vmName OBJECT-TYPE 851 SYNTAX SnmpAdminString (SIZE (0..255)) 852 MAX-ACCESS read-only 853 STATUS current 854 DESCRIPTION 855 "A textual name of the virtual machine." 856 ::= { vmEntry 2 } 858 vmUUID OBJECT-TYPE 859 SYNTAX UUIDorZero 860 MAX-ACCESS read-only 861 STATUS current 862 DESCRIPTION 863 "The virtual machine's 128-bit UUID or the zero-length 864 string when a UUID is not available. The UUID if set 865 MUST uniquely identify a virtual machine from all other 866 virtual machines in an administrative domain. A 867 zero-length octet string is returned if no UUID 868 information is known." 869 ::= { vmEntry 3 } 871 vmOSType OBJECT-TYPE 872 SYNTAX SnmpAdminString (SIZE (0..255)) 873 MAX-ACCESS read-only 874 STATUS current 875 DESCRIPTION 876 "A textual description containing operating system 877 information installed on the virtual machine. This 878 value corresponds to the operating system the hypervisor 879 assumes to be running when the virtual machine is 880 started. This may differ from the actual operating 881 system in case the virtual machine boots into a 882 different operating system." 884 ::= { vmEntry 4 } 886 vmAdminState OBJECT-TYPE 887 SYNTAX VirtualMachineAdminState 888 MAX-ACCESS read-only 889 STATUS current 890 DESCRIPTION 891 "The administrative state of the virtual machine." 892 ::= { vmEntry 5 } 894 vmOperState OBJECT-TYPE 895 SYNTAX VirtualMachineOperState 896 MAX-ACCESS read-only 897 STATUS current 898 DESCRIPTION 899 "The operational state of the virtual machine." 900 ::= { vmEntry 6 } 902 vmAutoStart OBJECT-TYPE 903 SYNTAX VirtualMachineAutoStart 904 MAX-ACCESS read-only 905 STATUS current 906 DESCRIPTION 907 "The autostart configuration of the virtual machine. If 908 this value is enable(2), the virtual machine 909 automatically starts at the next initialization of the 910 hypervisor." 911 ::= { vmEntry 7 } 913 vmPersistent OBJECT-TYPE 914 SYNTAX VirtualMachinePersistent 915 MAX-ACCESS read-only 916 STATUS current 917 DESCRIPTION 918 "This value indicates whether the virtual machine has a 919 persistent configuration which means the virtual machine 920 will still exist after its shutdown." 921 ::= { vmEntry 8 } 923 vmCurCpuNumber OBJECT-TYPE 924 SYNTAX Integer32 (0..2147483647) 925 MAX-ACCESS read-only 926 STATUS current 927 DESCRIPTION 928 "The number of virtual CPUs currently assigned to the 929 virtual machine." 930 ::= { vmEntry 9 } 932 vmMinCpuNumber OBJECT-TYPE 933 SYNTAX Integer32 (-1|0..2147483647) 934 MAX-ACCESS read-only 935 STATUS current 936 DESCRIPTION 937 "The minimum number of virtual CPUs that are assigned to 938 the virtual machine when it is in a power-on state. The 939 value -1 indicates that there is no hard boundary for 940 the minimum number of virtual CPUs." 941 ::= { vmEntry 10 } 943 vmMaxCpuNumber OBJECT-TYPE 944 SYNTAX Integer32 (-1|0..2147483647) 945 MAX-ACCESS read-only 946 STATUS current 947 DESCRIPTION 948 "The maximum number of virtual CPUs that are assigned to 949 the virtual machine when it is in a power-on state. The 950 value -1 indicates that there is no limit." 951 ::= { vmEntry 11 } 953 vmMemUnit OBJECT-TYPE 954 SYNTAX Integer32 (1..2147483647) 955 MAX-ACCESS read-only 956 STATUS current 957 DESCRIPTION 958 "The multiplication unit in byte for vmCurMem, vmMinMem, 959 and vmMaxMem. For example, when this value is 1024, the 960 memory size unit for vmCurMem, vmMinMem, and vmMaxMem is 961 KiB." 962 ::= { vmEntry 12 } 964 vmCurMem OBJECT-TYPE 965 SYNTAX Integer32 (0..2147483647) 966 MAX-ACCESS read-only 967 STATUS current 968 DESCRIPTION 969 "The current memory size currently allocated to the 970 virtual memory module in the unit designated by 971 vmMemUnit." 972 ::= { vmEntry 13 } 974 vmMinMem OBJECT-TYPE 975 SYNTAX Integer32 (-1|0..2147483647) 976 MAX-ACCESS read-only 977 STATUS current 978 DESCRIPTION 979 "The minimum memory size defined to the virtual machine 980 in the unit designated by vmMemUnit. The value -1 981 indicates that there is no hard boundary for the minimum 982 memory size." 983 ::= { vmEntry 14 } 985 vmMaxMem OBJECT-TYPE 986 SYNTAX Integer32 (-1|0..2147483647) 987 MAX-ACCESS read-only 988 STATUS current 989 DESCRIPTION 990 "The maximum memory size defined to the virtual machine 991 in the unit designated by vmMemUnit. The value -1 992 indicates that there is no limit." 993 ::= { vmEntry 15 } 995 vmUpTime OBJECT-TYPE 996 SYNTAX TimeTicks 997 MAX-ACCESS read-only 998 STATUS current 999 DESCRIPTION 1000 "The time (in centi-seconds) since the administrative 1001 state of the virtual machine was last changed from 1002 shutdown(4) to running(1)." 1003 ::= { vmEntry 16 } 1005 vmCpuTime OBJECT-TYPE 1006 SYNTAX Counter64 1007 UNITS "microsecond" 1008 MAX-ACCESS read-only 1009 STATUS current 1010 DESCRIPTION 1011 "The total CPU time used in microsecond. If the number 1012 of virtual CPUs is larger than 1, vmCpuTime may exceed 1013 real time. 1015 Discontinuities in the value of this counter can occur 1016 at re-initialization of the hypervisor, and 1017 administrative state (vmAdminState) changes of the 1018 virtual machine." 1019 ::= { vmEntry 17 } 1021 -- The virtual CPU on each virtual machines 1022 vmCpuTable OBJECT-TYPE 1023 SYNTAX SEQUENCE OF VmCpuEntry 1024 MAX-ACCESS not-accessible 1025 STATUS current 1026 DESCRIPTION 1027 "The table of virtual CPUs provided by the hypervisor." 1028 ::= { vmObjects 5 } 1030 vmCpuEntry OBJECT-TYPE 1031 SYNTAX VmCpuEntry 1032 MAX-ACCESS not-accessible 1033 STATUS current 1034 DESCRIPTION 1035 "An entry for one virtual processor assigned to a 1036 virtual machine." 1037 INDEX { vmIndex, vmCpuIndex } 1038 ::= { vmCpuTable 1 } 1040 VmCpuEntry ::= 1041 SEQUENCE { 1042 vmCpuIndex VirtualMachineCpuIndex, 1043 vmCpuCoreTime Counter64 1044 } 1046 vmCpuIndex OBJECT-TYPE 1047 SYNTAX VirtualMachineCpuIndex 1048 MAX-ACCESS not-accessible 1049 STATUS current 1050 DESCRIPTION 1051 "A unique value identifying a virtual CPU assigned to 1052 the virtual machine." 1053 ::= { vmCpuEntry 1 } 1055 vmCpuCoreTime OBJECT-TYPE 1056 SYNTAX Counter64 1057 UNITS "microsecond" 1058 MAX-ACCESS read-only 1059 STATUS current 1060 DESCRIPTION 1061 "The total CPU time used by this virtual CPU in 1062 microsecond. 1064 Discontinuities in the value of this counter can occur 1065 at re-initialization of the hypervisor, and 1066 administrative state (vmAdminState) changes of the 1067 virtual machine." 1068 ::= { vmCpuEntry 2 } 1070 -- The virtual CPU affinity on each virtual machines 1071 vmCpuAffinityTable OBJECT-TYPE 1072 SYNTAX SEQUENCE OF VmCpuAffinityEntry 1073 MAX-ACCESS not-accessible 1074 STATUS current 1075 DESCRIPTION 1076 "A list of CPU affinity entries of a virtual CPU." 1077 ::= { vmObjects 6 } 1079 vmCpuAffinityEntry OBJECT-TYPE 1080 SYNTAX VmCpuAffinityEntry 1081 MAX-ACCESS not-accessible 1082 STATUS current 1083 DESCRIPTION 1084 "An entry containing CPU affinity associated with a 1085 particular virtual machine." 1086 INDEX { vmIndex, vmCpuIndex, vmCpuPhysIndex } 1087 ::= { vmCpuAffinityTable 1 } 1089 VmCpuAffinityEntry ::= 1090 SEQUENCE { 1091 vmCpuPhysIndex Integer32, 1092 vmCpuAffinity Integer32 1093 } 1095 vmCpuPhysIndex OBJECT-TYPE 1096 SYNTAX Integer32 (1..2147483647) 1097 MAX-ACCESS not-accessible 1098 STATUS current 1099 DESCRIPTION 1100 "A value identifying a physical CPU on the hypervisor. 1101 On systems implementing the HOST-RESOURCES-MIB, the 1102 value MUST be the same value that is used as the index 1103 in the hrProcessorTable (hrDeviceIndex)." 1104 ::= { vmCpuAffinityEntry 2 } 1106 vmCpuAffinity OBJECT-TYPE 1107 SYNTAX INTEGER { 1108 unknown(0), -- unknown 1109 enable(1), -- enabled 1110 disable(2) -- disabled 1111 } 1112 MAX-ACCESS read-only 1113 STATUS current 1114 DESCRIPTION 1115 "The CPU affinity of this virtual CPU to the physical 1116 CPU represented by 'vmCpuPhysIndex'." 1117 ::= { vmCpuAffinityEntry 3 } 1119 -- The virtual storage devices on each virtual machine. This 1120 -- document defines some overlapped objects with hrStorage in 1121 -- HOST-RESOURCES-MIB [RFC2790], because virtual resources are 1122 -- allocated from the hypervisor's resources, which is the 'host 1123 -- resources' 1124 vmStorageTable OBJECT-TYPE 1125 SYNTAX SEQUENCE OF VmStorageEntry 1126 MAX-ACCESS not-accessible 1127 STATUS current 1128 DESCRIPTION 1129 "The conceptual table of virtual storage devices 1130 attached to the virtual machine." 1131 ::= { vmObjects 7 } 1133 vmStorageEntry OBJECT-TYPE 1134 SYNTAX VmStorageEntry 1135 MAX-ACCESS not-accessible 1136 STATUS current 1137 DESCRIPTION 1138 "An entry for one virtual storage device attached to the 1139 virtual machine." 1140 INDEX { vmStorageVmIndex, vmStorageIndex } 1141 ::= { vmStorageTable 1 } 1143 VmStorageEntry ::= 1144 SEQUENCE { 1145 vmStorageVmIndex VirtualMachineIndexOrZero, 1146 vmStorageIndex VirtualMachineStorageIndex, 1147 vmStorageParent Integer32, 1148 vmStorageSourceType VirtualMachineStorageSourceType, 1149 vmStorageSourceTypeString 1150 SnmpAdminString, 1151 vmStorageResourceID SnmpAdminString, 1152 vmStorageAccess VirtualMachineStorageAccess, 1153 vmStorageMediaType IANAStorageMediaType, 1154 vmStorageMediaTypeString 1155 SnmpAdminString, 1156 vmStorageSizeUnit Integer32, 1157 vmStorageDefinedSize Integer32, 1158 vmStorageAllocatedSize Integer32, 1159 vmStorageReadIOs Counter64, 1160 vmStorageWriteIOs Counter64, 1161 vmStorageReadOctets Counter64, 1162 vmStorageWriteOctets Counter64, 1163 vmStorageReadLatency Counter64, 1164 vmStorageWriteLatency Counter64 1165 } 1167 vmStorageVmIndex OBJECT-TYPE 1168 SYNTAX VirtualMachineIndexOrZero 1169 MAX-ACCESS not-accessible 1170 STATUS current 1171 DESCRIPTION 1172 "This value identifies the virtual machine (guest) this 1173 storage device has been allocated to. The value zero 1174 indicates that the storage device is currently not 1175 allocated to any virtual machines." 1176 ::= { vmStorageEntry 1 } 1178 vmStorageIndex OBJECT-TYPE 1179 SYNTAX VirtualMachineStorageIndex 1180 MAX-ACCESS not-accessible 1181 STATUS current 1182 DESCRIPTION 1183 "A unique value identifying a virtual storage device 1184 allocated to the virtual machine." 1185 ::= { vmStorageEntry 2 } 1187 vmStorageParent OBJECT-TYPE 1188 SYNTAX Integer32 (0..2147483647) 1189 MAX-ACCESS read-only 1190 STATUS current 1191 DESCRIPTION 1192 "The value of hrStorageIndex which is the parent (i.e., 1193 physical) device of this virtual device on systems 1194 implementing the HOST-RESOURCES-MIB. The value zero 1195 denotes this virtual device is not any child represented 1196 in the hrStorageTable." 1197 ::= { vmStorageEntry 3 } 1199 vmStorageSourceType OBJECT-TYPE 1200 SYNTAX VirtualMachineStorageSourceType 1201 MAX-ACCESS read-only 1202 STATUS current 1203 DESCRIPTION 1204 "The source type of the virtual storage device." 1205 ::= { vmStorageEntry 4 } 1207 vmStorageSourceTypeString OBJECT-TYPE 1208 SYNTAX SnmpAdminString (SIZE (0..255)) 1209 MAX-ACCESS read-only 1210 STATUS current 1211 DESCRIPTION 1212 "A (detailed) textual string of the source type of the 1213 virtual storage device. For example, this represents 1214 the specific format name of the sparse file." 1215 ::= { vmStorageEntry 5 } 1217 vmStorageResourceID OBJECT-TYPE 1218 SYNTAX SnmpAdminString (SIZE (0..255)) 1219 MAX-ACCESS read-only 1220 STATUS current 1221 DESCRIPTION 1222 "A textual string that represents the resource 1223 identifier of the virtual storage. For example, this 1224 contains the path to the disk image file that 1225 corresponds to the virtual storage." 1226 ::= { vmStorageEntry 6 } 1228 vmStorageAccess OBJECT-TYPE 1229 SYNTAX VirtualMachineStorageAccess 1230 MAX-ACCESS read-only 1231 STATUS current 1232 DESCRIPTION 1233 "The access permission of the virtual storage device." 1234 ::= { vmStorageEntry 7 } 1236 vmStorageMediaType OBJECT-TYPE 1237 SYNTAX IANAStorageMediaType 1238 MAX-ACCESS read-only 1239 STATUS current 1240 DESCRIPTION 1241 "The media type of the virtual storage device." 1242 ::= { vmStorageEntry 8 } 1244 vmStorageMediaTypeString OBJECT-TYPE 1245 SYNTAX SnmpAdminString (SIZE (0..255)) 1246 MAX-ACCESS read-only 1247 STATUS current 1248 DESCRIPTION 1249 "A (detailed) textual string of the virtual storage 1250 media. For example, this represents the specific driver 1251 name of the emulated media such as 'IDE' and 'SCSI'." 1252 ::= { vmStorageEntry 9 } 1254 vmStorageSizeUnit OBJECT-TYPE 1255 SYNTAX Integer32 (1..2147483647) 1256 MAX-ACCESS read-only 1257 STATUS current 1258 DESCRIPTION 1259 "The multiplication unit in byte for 1260 vmStorageDefinedSize and vmStorageAllocatedSize. For 1261 example, when this value is 1048576, the storage size 1262 unit for vmStorageDefinedSize and vmStorageAllocatedSize 1263 is MiB." 1264 ::= { vmStorageEntry 10 } 1266 vmStorageDefinedSize OBJECT-TYPE 1267 SYNTAX Integer32 (-1|0..2147483647) 1268 MAX-ACCESS read-only 1269 STATUS current 1270 DESCRIPTION 1271 "The defined virtual storage size defined in the unit 1272 designated by vmStorageSizeUnit. If this information is 1273 not available, this value MUST be -1." 1274 ::= { vmStorageEntry 11 } 1276 vmStorageAllocatedSize OBJECT-TYPE 1277 SYNTAX Integer32 (-1|0..2147483647) 1278 MAX-ACCESS read-only 1279 STATUS current 1280 DESCRIPTION 1281 "The storage size allocated to the virtual storage from 1282 a physical storage in the unit designated by 1283 vmStorageSizeUnit. When the virtual storage is block 1284 device or raw file, this value and vmStorageDefinedSize 1285 are supposed to equal. This value MUST NOT be different 1286 from vmStorageDefinedSize when vmStorageSourceType is 1287 'block' or 'raw'. If this information is not available, 1288 this value MUST be -1." 1289 ::= { vmStorageEntry 12 } 1291 vmStorageReadIOs OBJECT-TYPE 1292 SYNTAX Counter64 1293 MAX-ACCESS read-only 1294 STATUS current 1295 DESCRIPTION 1296 "The number of read I/O requests. 1298 Discontinuities in the value of this counter can occur 1299 at re-initialization of the hypervisor, and 1300 administrative state (vmAdminState) changes of the 1301 virtual machine." 1302 ::= { vmStorageEntry 13 } 1304 vmStorageWriteIOs OBJECT-TYPE 1305 SYNTAX Counter64 1306 MAX-ACCESS read-only 1307 STATUS current 1308 DESCRIPTION 1309 "The number of write I/O requests. 1311 Discontinuities in the value of this counter can occur 1312 at re-initialization of the hypervisor, and 1313 administrative state (vmAdminState) changes of the 1314 virtual machine." 1315 ::= { vmStorageEntry 14 } 1317 vmStorageReadOctets OBJECT-TYPE 1318 SYNTAX Counter64 1319 MAX-ACCESS read-only 1320 STATUS current 1321 DESCRIPTION 1322 "The total number of bytes read from this device. 1324 Discontinuities in the value of this counter can occur 1325 at re-initialization of the hypervisor, and 1326 administrative state (vmAdminState) changes of the 1327 virtual machine." 1328 ::= { vmStorageEntry 15 } 1330 vmStorageWriteOctets OBJECT-TYPE 1331 SYNTAX Counter64 1332 MAX-ACCESS read-only 1333 STATUS current 1334 DESCRIPTION 1335 "The total number of bytes written to this device. 1337 Discontinuities in the value of this counter can occur 1338 at re-initialization of the hypervisor, and 1339 administrative state (vmAdminState) changes of the 1340 virtual machine." 1341 ::= { vmStorageEntry 16 } 1343 vmStorageReadLatency OBJECT-TYPE 1344 SYNTAX Counter64 1345 MAX-ACCESS read-only 1346 STATUS current 1347 DESCRIPTION 1348 "The total number of microseconds read requests have 1349 been queued for this device. 1350 This would typically be implemented by storing the high 1351 precision system time stamp of when the request is 1352 received from the virtual machine with the request, the 1353 difference between this initial timestamp and the time 1354 at which the requested operation has completed SHOULD be 1355 converted to microseconds and accumulated. 1356 Discontinuities in the value of this counter can occur at 1357 re-initialization of the hypervisor, and administrative 1358 state (vmAdminState) changes of the virtual machine." 1359 ::= { vmStorageEntry 17 } 1361 vmStorageWriteLatency OBJECT-TYPE 1362 SYNTAX Counter64 1363 MAX-ACCESS read-only 1364 STATUS current 1365 DESCRIPTION 1366 "The total number of microseconds write requests have 1367 been queued for this device. 1368 This would typically be implemented by storing the high 1369 precision system time stamp of when the request is 1370 received from the virtual machine with the request, the 1371 difference between this initial timestamp and the time 1372 at which the requested operation has completed SHOULD be 1373 converted to microseconds and accumulated. 1374 Discontinuities in the value of this counter can occur 1375 at re-initialization of the hypervisor, and 1376 administrative state (vmAdminState) changes of the 1377 virtual machine." 1378 ::= { vmStorageEntry 18 } 1380 -- The virtual network interfaces on each virtual machine. 1381 vmNetworkTable OBJECT-TYPE 1382 SYNTAX SEQUENCE OF VmNetworkEntry 1383 MAX-ACCESS not-accessible 1384 STATUS current 1385 DESCRIPTION 1386 "The conceptual table of virtual network interfaces 1387 attached to the virtual machine." 1388 ::= { vmObjects 8 } 1390 vmNetworkEntry OBJECT-TYPE 1391 SYNTAX VmNetworkEntry 1392 MAX-ACCESS not-accessible 1393 STATUS current 1394 DESCRIPTION 1395 "An entry for one virtual network interfaces attached to 1396 the virtual machine." 1397 INDEX { vmIndex, vmNetworkIndex } 1398 ::= { vmNetworkTable 1 } 1400 VmNetworkEntry ::= 1401 SEQUENCE { 1402 vmNetworkIndex VirtualMachineNetworkIndex, 1403 vmNetworkIfIndex InterfaceIndexOrZero, 1404 vmNetworkParent InterfaceIndexOrZero, 1405 vmNetworkModel SnmpAdminString, 1406 vmNetworkPhysAddress PhysAddress 1407 } 1409 vmNetworkIndex OBJECT-TYPE 1410 SYNTAX VirtualMachineNetworkIndex 1411 MAX-ACCESS not-accessible 1412 STATUS current 1413 DESCRIPTION 1414 "A unique value identifying a virtual network interface 1415 allocated to the virtual machine." 1416 ::= { vmNetworkEntry 1 } 1418 vmNetworkIfIndex OBJECT-TYPE 1419 SYNTAX InterfaceIndexOrZero 1420 MAX-ACCESS read-only 1421 STATUS current 1422 DESCRIPTION 1423 "The value of ifIndex which corresponds to this virtual 1424 network interface. If this device is not represented in 1425 the ifTable, then this value MUST be zero." 1426 ::= { vmNetworkEntry 2 } 1428 vmNetworkParent OBJECT-TYPE 1429 SYNTAX InterfaceIndexOrZero 1430 MAX-ACCESS read-only 1431 STATUS current 1432 DESCRIPTION 1433 "The value of ifIndex which corresponds to the parent 1434 (i.e., physical) device of this virtual device on. The 1435 value zero denotes this virtual device is not any child 1436 represented in the ifTable." 1437 ::= { vmNetworkEntry 3 } 1439 vmNetworkModel OBJECT-TYPE 1440 SYNTAX SnmpAdminString (SIZE (0..255)) 1441 MAX-ACCESS read-only 1442 STATUS current 1443 DESCRIPTION 1444 "A textual string containing the (emulated) model of 1445 virtual network interface. For example, this value is 1446 'virtio' when the emulation driver model is virtio." 1447 ::= { vmNetworkEntry 4 } 1449 vmNetworkPhysAddress OBJECT-TYPE 1450 SYNTAX PhysAddress 1451 MAX-ACCESS read-only 1452 STATUS current 1453 DESCRIPTION 1454 "The MAC address of the virtual network interface." 1455 ::= { vmNetworkEntry 5 } 1457 -- Notification definitions: 1459 vmPerVMNotificationsEnabled OBJECT-TYPE 1460 SYNTAX TruthValue 1461 MAX-ACCESS read-write 1462 STATUS current 1463 DESCRIPTION 1464 "Indicates if notification generator will send 1465 notifications per virtual machine. Changes to this 1466 object MUST NOT persist across re-initialization of 1467 the management system, e.g., SNMP agent." 1468 ::= { vmObjects 9 } 1470 vmBulkNotificationsEnabled OBJECT-TYPE 1471 SYNTAX TruthValue 1472 MAX-ACCESS read-write 1473 STATUS current 1474 DESCRIPTION 1475 "Indicates if notification generator will send 1476 notifications per set of virtual machines. Changes to 1477 this object MUST NOT persist across re-initialization of 1478 the management system, e.g., SNMP agent." 1479 ::= { vmObjects 10 } 1481 vmAffectedVMs OBJECT-TYPE 1482 SYNTAX VirtualMachineList 1483 MAX-ACCESS accessible-for-notify 1484 STATUS current 1485 DESCRIPTION 1486 "A complete list of virtual machines whose state has 1487 changed. This object is the only object sent with bulk 1488 notifications." 1489 ::= { vmObjects 11 } 1491 vmRunning NOTIFICATION-TYPE 1492 OBJECTS { 1493 vmName, 1494 vmUUID, 1495 vmOperState 1496 } 1497 STATUS current 1498 DESCRIPTION 1499 "This notification is generated when the operational 1500 state of a virtual machine has been changed to 1501 running(4) from some other state. The other state is 1502 indicated by the included value of vmOperState." 1503 ::= { vmNotifications 1 } 1505 vmShuttingdown NOTIFICATION-TYPE 1506 OBJECTS { 1507 vmName, 1508 vmUUID, 1509 vmOperState 1510 } 1511 STATUS current 1512 DESCRIPTION 1513 "This notification is generated when the operational 1514 state of a virtual machine has been changed to 1515 shuttingdown(10) from some other state. The other state 1516 is indicated by the included value of vmOperState." 1517 ::= { vmNotifications 2 } 1519 vmShutdown NOTIFICATION-TYPE 1520 OBJECTS { 1521 vmName, 1522 vmUUID, 1523 vmOperState 1524 } 1525 STATUS current 1526 DESCRIPTION 1527 "This notification is generated when the operational 1528 state of a virtual machine has been changed to 1529 shutdown(11) from some other state. The other state is 1530 indicated by the included value of vmOperState." 1531 ::= { vmNotifications 3 } 1533 vmPaused NOTIFICATION-TYPE 1534 OBJECTS { 1535 vmName, 1536 vmUUID, 1537 vmOperState 1538 } 1539 STATUS current 1540 DESCRIPTION 1541 "This notification is generated when the operational 1542 state of a virtual machine has been changed to 1543 paused(8) from some other state. The other state is 1544 indicated by the included value of vmOperState." 1545 ::= { vmNotifications 4 } 1547 vmSuspending NOTIFICATION-TYPE 1548 OBJECTS { 1549 vmName, 1550 vmUUID, 1551 vmOperState 1552 } 1554 STATUS current 1555 DESCRIPTION 1556 "This notification is generated when the operational 1557 state of a virtual machine has been changed to 1558 suspending(5) from some other state. The other state is 1559 indicated by the included value of vmOperState." 1560 ::= { vmNotifications 5 } 1562 vmSuspended NOTIFICATION-TYPE 1563 OBJECTS { 1564 vmName, 1565 vmUUID, 1566 vmOperState 1567 } 1568 STATUS current 1569 DESCRIPTION 1570 "This notification is generated when the operational 1571 state of a virtual machine has been changed to 1572 suspended(6) from some other state. The other state is 1573 indicated by the included value of vmOperState." 1574 ::= { vmNotifications 6 } 1576 vmResuming NOTIFICATION-TYPE 1577 OBJECTS { 1578 vmName, 1579 vmUUID, 1580 vmOperState 1581 } 1582 STATUS current 1583 DESCRIPTION 1584 "This notification is generated when the operational 1585 state of a virtual machine has been changed to 1586 resuming(7) from some other state. The other state is 1587 indicated by the included value of vmOperState." 1588 ::= { vmNotifications 7 } 1590 vmMigrating NOTIFICATION-TYPE 1591 OBJECTS { 1592 vmName, 1593 vmUUID, 1594 vmOperState 1595 } 1596 STATUS current 1597 DESCRIPTION 1598 "This notification is generated when the operational 1599 state of a virtual machine has been changed to 1600 migrating(9) from some other state. The other state is 1601 indicated by the included value of vmOperState." 1603 ::= { vmNotifications 8 } 1605 vmCrashed NOTIFICATION-TYPE 1606 OBJECTS { 1607 vmName, 1608 vmUUID, 1609 vmOperState 1610 } 1611 STATUS current 1612 DESCRIPTION 1613 "This notification is generated when a virtual machine 1614 has been crashed. The previos state of the virtual 1615 machine is indicated by the included value of 1616 vmOperState." 1617 ::= { vmNotifications 9 } 1619 vmDeleted NOTIFICATION-TYPE 1620 OBJECTS { 1621 vmName, 1622 vmUUID, 1623 vmOperState, 1624 vmPersistent 1625 } 1626 STATUS current 1627 DESCRIPTION 1628 "This notification is generated when a virtual machine 1629 has been deleted. The prior state of the virtual 1630 machine is indicated by the included value of 1631 vmOperState." 1632 ::= { vmNotifications 10 } 1634 vmBulkRunning NOTIFICATION-TYPE 1635 OBJECTS { 1636 vmAffectedVMs 1637 } 1638 STATUS current 1639 DESCRIPTION 1640 "This notification is generated when the operational 1641 state of one or more virtual machine has been changed to 1642 running(4) from a all prior states except for 1643 running(4). Management stations are encouraged to 1644 subsequently poll the subset of virtual machines of 1645 interest for vmOperState." 1646 ::= { vmNotifications 11 } 1648 vmBulkShuttingdown NOTIFICATION-TYPE 1649 OBJECTS { 1650 vmAffectedVMs 1652 } 1653 STATUS current 1654 DESCRIPTION 1655 "This notification is generated when the operational 1656 state of one or more virtual machine has been changed to 1657 shuttingdown(10) from a state other than 1658 shuttingdown(10). Management stations are encouraged to 1659 subsequently poll the subset of virtual machines of 1660 interest for vmOperState." 1661 ::= { vmNotifications 12 } 1663 vmBulkShutdown NOTIFICATION-TYPE 1664 OBJECTS { 1665 vmAffectedVMs 1666 } 1667 STATUS current 1668 DESCRIPTION 1669 "This notification is generated when the operational 1670 state of one or more virtual machine has been changed to 1671 shutdown(11) from a state other than shutdown(11). 1672 Management stations are encouraged to subsequently poll 1673 the subset of virtual machines of interest for 1674 vmOperState." 1675 ::= { vmNotifications 13 } 1677 vmBulkPaused NOTIFICATION-TYPE 1678 OBJECTS { 1679 vmAffectedVMs 1680 } 1681 STATUS current 1682 DESCRIPTION 1683 "This notification is generated when the operational 1684 state of one or more virtual machines have been changed 1685 to paused(8) from a state other than paused(8). 1686 Management stations are encouraged to subsequently poll 1687 the subset of virtual machines of interest for 1688 vmOperState." 1689 ::= { vmNotifications 14 } 1691 vmBulkSuspending NOTIFICATION-TYPE 1692 OBJECTS { 1693 vmAffectedVMs 1694 } 1695 STATUS current 1696 DESCRIPTION 1697 "This notification is generated when the operational 1698 state of one or more virtual machines have been changed 1699 to suspending(5) from a state other than suspending(5). 1700 Management stations are encouraged to subsequently poll 1701 the subset of virtual machines of interest for 1702 vmOperState." 1703 ::= { vmNotifications 15 } 1705 vmBulkSuspended NOTIFICATION-TYPE 1706 OBJECTS { 1707 vmAffectedVMs 1708 } 1709 STATUS current 1710 DESCRIPTION 1711 "This notification is generated when the operational 1712 state of one or more virtual machines have been changed 1713 to suspended(6) from a state other than suspended(6). 1714 Management stations are encouraged to subsequently poll 1715 the subset of virtual machines of interest for 1716 vmOperState." 1717 ::= { vmNotifications 16 } 1719 vmBulkResuming NOTIFICATION-TYPE 1720 OBJECTS { 1721 vmAffectedVMs 1722 } 1723 STATUS current 1724 DESCRIPTION 1725 "This notification is generated when the operational 1726 state of one or more virtual machines have been changed 1727 to resuming(7) from a state other than resuming(7). 1728 Management stations are encouraged to subsequently poll 1729 the subset of virtual machines of interest for 1730 vmOperState." 1731 ::= { vmNotifications 17 } 1733 vmBulkMigrating NOTIFICATION-TYPE 1734 OBJECTS { 1735 vmAffectedVMs 1736 } 1737 STATUS current 1738 DESCRIPTION 1739 "This notification is generated when the operational 1740 state of one or more virtual machines have been changed 1741 to migrating(9) from a state other than migrating(9). 1742 Management stations are encouraged to subsequently poll 1743 the subset of virtual machines of interest for 1744 vmOperState." 1745 ::= { vmNotifications 18 } 1747 vmBulkCrashed NOTIFICATION-TYPE 1748 OBJECTS { 1749 vmAffectedVMs 1750 } 1751 STATUS current 1752 DESCRIPTION 1753 "This notification is generated when one or more virtual 1754 machines have been crashed. Management stations are 1755 encouraged to subsequently poll the subset of virtual 1756 machines of interest for vmOperState." 1757 ::= { vmNotifications 19 } 1759 vmBulkDeleted NOTIFICATION-TYPE 1760 OBJECTS { 1761 vmAffectedVMs 1762 } 1763 STATUS current 1764 DESCRIPTION 1765 "This notification is generated when one or more virtual 1766 machines have been deleted. Management stations are 1767 encouraged to subsequently poll the subset of virtual 1768 machines of interest for vmOperState." 1769 ::= { vmNotifications 20 } 1771 -- Compliance definitions: 1772 vmCompliances OBJECT IDENTIFIER ::= { vmConformance 1 } 1773 vmGroups OBJECT IDENTIFIER ::= { vmConformance 2 } 1775 vmFullCompliances MODULE-COMPLIANCE 1776 STATUS current 1777 DESCRIPTION 1778 "Compliance statement for implementations supporting 1779 read/write access, according to the object definitions." 1780 MODULE -- this module 1781 MANDATORY-GROUPS { 1782 vmHypervisorGroup, 1783 vmVirtualMachineGroup, 1784 vmCpuGroup, 1785 vmCpuAffinityGroup, 1786 vmStorageGroup, 1787 vmNetworkGroup 1788 } 1789 GROUP vmPerVMNotificationOptionalGroup 1790 DESCRIPTION 1791 "Support for per-VM notifications is optional. If not 1792 implemented then vmPerVMNotificationsEnabled MUST report 1793 false(2)." 1794 GROUP vmBulkNotificationsVariablesGroup 1795 DESCRIPTION 1796 "Necessary only if vmPerVMNotificationOptionalGroup is 1797 implemented." 1798 GROUP vmBulkNotificationOptionalGroup 1799 DESCRIPTION 1800 "Support for bulk notifications is optional. If not 1801 implemented then vmBulkNotificationsEnabled MUST report 1802 false(2)." 1804 ::= { vmCompliances 1 } 1806 vmReadOnlyCompliances MODULE-COMPLIANCE 1807 STATUS current 1808 DESCRIPTION 1809 "Compliance statement for implementations supporting 1810 only readonly access." 1811 MODULE -- this module 1812 MANDATORY-GROUPS { 1813 vmHypervisorGroup, 1814 vmVirtualMachineGroup, 1815 vmCpuGroup, 1816 vmCpuAffinityGroup, 1817 vmStorageGroup, 1818 vmNetworkGroup 1819 } 1821 OBJECT vmPerVMNotificationsEnabled 1822 MIN-ACCESS read-only 1823 DESCRIPTION 1824 "Write access is not required." 1826 OBJECT vmBulkNotificationsEnabled 1827 MIN-ACCESS read-only 1828 DESCRIPTION 1829 "Write access is not required." 1830 ::= { vmCompliances 2 } 1832 vmHypervisorGroup OBJECT-GROUP 1833 OBJECTS { 1834 vmHvSoftware, 1835 vmHvVersion, 1836 vmHvObjectID, 1837 vmHvUpTime, 1838 vmNumber, 1839 vmTableLastChange, 1840 vmPerVMNotificationsEnabled, 1841 vmBulkNotificationsEnabled 1842 } 1843 STATUS current 1844 DESCRIPTION 1845 "A collection of objects providing insight into the 1846 hypervisor itself." 1847 ::= { vmGroups 1 } 1849 vmVirtualMachineGroup OBJECT-GROUP 1850 OBJECTS { 1851 -- vmIndex 1852 vmName, 1853 vmUUID, 1854 vmOSType, 1855 vmAdminState, 1856 vmOperState, 1857 vmAutoStart, 1858 vmPersistent, 1859 vmCurCpuNumber, 1860 vmMinCpuNumber, 1861 vmMaxCpuNumber, 1862 vmMemUnit, 1863 vmCurMem, 1864 vmMinMem, 1865 vmMaxMem, 1866 vmUpTime, 1867 vmCpuTime 1868 } 1869 STATUS current 1870 DESCRIPTION 1871 "A collection of objects providing insight into the 1872 virtual machines) controlled by a hypervisor." 1873 ::= { vmGroups 2 } 1875 vmCpuGroup OBJECT-GROUP 1876 OBJECTS { 1877 -- vmCpuIndex, 1878 vmCpuCoreTime 1879 } 1880 STATUS current 1881 DESCRIPTION 1882 "A collection of objects providing insight into the 1883 virtual machines) controlled by a hypervisor." 1884 ::= { vmGroups 3 } 1886 vmCpuAffinityGroup OBJECT-GROUP 1887 OBJECTS { 1888 -- vmCpuPhysIndex, 1889 vmCpuAffinity 1890 } 1891 STATUS current 1892 DESCRIPTION 1893 "A collection of objects providing insight into the 1894 virtual machines) controlled by a hypervisor." 1895 ::= { vmGroups 4 } 1897 vmStorageGroup OBJECT-GROUP 1898 OBJECTS { 1899 -- vmStorageVmIndex, 1900 -- vmStorageIndex, 1901 vmStorageParent, 1902 vmStorageSourceType, 1903 vmStorageSourceTypeString, 1904 vmStorageResourceID, 1905 vmStorageAccess, 1906 vmStorageMediaType, 1907 vmStorageMediaTypeString, 1908 vmStorageSizeUnit, 1909 vmStorageDefinedSize, 1910 vmStorageAllocatedSize, 1911 vmStorageReadIOs, 1912 vmStorageWriteIOs, 1913 vmStorageReadOctets, 1914 vmStorageWriteOctets, 1915 vmStorageReadLatency, 1916 vmStorageWriteLatency 1917 } 1918 STATUS current 1919 DESCRIPTION 1920 "A collection of objects providing insight into the 1921 virtual storage devices controlled by a hypervisor." 1922 ::= { vmGroups 5 } 1924 vmNetworkGroup OBJECT-GROUP 1925 OBJECTS { 1926 -- vmNetworkIndex, 1927 vmNetworkIfIndex, 1928 vmNetworkParent, 1929 vmNetworkModel, 1930 vmNetworkPhysAddress 1931 } 1932 STATUS current 1933 DESCRIPTION 1934 "A collection of objects providing insight into the 1935 virtual network interfaces controlled by a hypervisor." 1936 ::= { vmGroups 6 } 1938 vmPerVMNotificationOptionalGroup NOTIFICATION-GROUP 1939 NOTIFICATIONS { 1940 vmRunning, 1941 vmShuttingdown, 1942 vmShutdown, 1943 vmPaused, 1944 vmSuspending, 1945 vmSuspended, 1946 vmResuming, 1947 vmMigrating, 1948 vmCrashed, 1949 vmDeleted 1950 } 1951 STATUS current 1952 DESCRIPTION 1953 "A collection of notifications for per-VM notification 1954 of changes to virtual machine state (vmOperState) as 1955 reported by a hypervisor." 1956 ::= { vmGroups 7 } 1958 vmBulkNotificationsVariablesGroup OBJECT-GROUP 1959 OBJECTS { 1960 vmAffectedVMs 1961 } 1962 STATUS current 1963 DESCRIPTION 1964 "The variables used in vmBulkNotificationOptionalGroup 1965 virtual network interfaces controlled by a hypervisor." 1966 ::= { vmGroups 8 } 1968 vmBulkNotificationOptionalGroup NOTIFICATION-GROUP 1969 NOTIFICATIONS { 1970 vmBulkRunning, 1971 vmBulkShuttingdown, 1972 vmBulkShutdown, 1973 vmBulkPaused, 1974 vmBulkSuspending, 1975 vmBulkSuspended, 1976 vmBulkResuming, 1977 vmBulkMigrating, 1978 vmBulkCrashed, 1979 vmBulkDeleted 1980 } 1981 STATUS current 1982 DESCRIPTION 1983 "A collection of notifications for bulk notification of 1984 changes to virtual machine state (vmOperState) as 1985 reported by a given hypervisor." 1986 ::= { vmGroups 9 } 1988 END 1990 6.2. IANA-STORAGE-MEDIA-TYPE-MIB 1992 IANA-STORAGE-MEDIA-TYPE-MIB DEFINITIONS ::= BEGIN 1994 IMPORTS 1995 MODULE-IDENTITY, mib-2 1996 FROM SNMPv2-SMI 1997 TEXTUAL-CONVENTION 1998 FROM SNMPv2-TC; 2000 ianaStorageMediaTypeMIB MODULE-IDENTITY 2001 LAST-UPDATED "201508050000Z" -- 5 August 2015 2002 ORGANIZATION "IANA" 2003 CONTACT-INFO 2004 "Internet Assigned Numbers Authority 2005 Postal: ICANN 2006 12025 Waterfront Drive, Suite 300 2007 Los Angeles, CA 90094-2536 2008 Tel: +1 310-301-5800 2009 E-Mail: iana&iana.org" 2011 DESCRIPTION 2012 "This MIB module defines Textual Conventions 2013 representing the media type of a storage device. 2015 Copyright (c) 2015 IETF Trust and the persons identified 2016 as authors of the code. All rights reserved. 2018 Redistribution and use in source and binary forms, with 2019 or without modification, is permitted pursuant to, and 2020 subject to the license terms contained in, the 2021 Simplified BSD License set forth in Section 4.c of the 2022 IETF Trust's Legal Provisions Relating to IETF Documents 2023 (http://trustee.ietf.org/license-info)." 2025 REVISION "201508050000Z" -- 5 August 2015 2026 DESCRIPTION 2027 "The initial version of this MIB, published as 2028 RFCXXXX." 2029 ::= { mib-2 zzz } 2031 -- RFC Ed.: replace XXXX with RFC number and remove this note 2032 -- RFC Ed.: replace zzz with actual number and remove this note 2034 IANAStorageMediaType ::= TEXTUAL-CONVENTION 2035 STATUS current 2036 DESCRIPTION 2037 "The media type of a storage device: 2039 unknown(1) The media type is unknown, e.g., because 2040 the implementation failed to obtain the 2041 media type from the hypervisor. 2043 other(2) The media type is other than those 2044 defined in this conversion. 2046 hardDisk(3) The media type is hard disk. 2048 opticalDisk(4) The media type is optical disk. 2050 floppyDisk(5) The media type is floppy disk." 2052 SYNTAX INTEGER { 2053 other(1), 2054 unknown(2), 2055 hardDisk(3), 2056 opticalDisk(4), 2057 floppyDisk(5) 2058 } 2060 END 2062 7. IANA Considerations 2064 This document defines the first version of the IANA-maintained IANA- 2065 STORAGE-MEDIA-TYPE-MIB module, which allows new storage media types 2066 to be added to the enumeration in IANAStorageMediaType. An Expert 2067 Review, as defined in RFC 5226 [RFC5226], is REQUIRED for each 2068 modification. 2070 The MIB module in this document uses the following IANA-assigned 2071 OBJECT IDENTIFIER values recorded in the SMI Numbers registry: 2073 Descriptor OBJECT IDENTIFIER value 2074 ---------- ----------------------- 2076 vmMIB { mib-2 yyy } 2077 IANAStorageMediaTypeMIB { mib-2 zzz } 2079 8. Security Considerations 2081 This MIB module is typically implemented on the hypervisor not inside 2082 a virtual machine. Virtual machines, possibly under other 2083 administrative domains, would not have access to this MIB as the SNMP 2084 service would typically operate in a separate management network. 2086 There are two objects defined in this MIB module, 2087 vmPerVMNotificationsEnabled and vmBulkNotificationsEnabled, that have 2088 a MAX-ACCESS clause of read-write. Enabling notifications can lead 2089 to a substantial number of notifications if many virtual machines 2090 change their state concurrently. Hence, such objects may be 2091 considered sensitive or vulnerable in some network environments. The 2092 support for SET operations in a non-secure environment without proper 2093 protection can have a negative effect on the management system. It 2094 is RECOMMENDED that these objects have access of read-only instead of 2095 read-write on deployments where SNMPv3 strong security (i.e., 2096 authentication and encryption) is not used. 2098 There are a number of managed objects in this MIB that may contain 2099 sensitive information. The objects in the vmHvSoftware and 2100 vmHvVersion list information about the hypervisor's software and 2101 version. Some may wish not to disclose to others which software they 2102 are running. Further, an inventory of the running software and 2103 versions may be helpful to an attacker who hopes to exploit software 2104 bugs in certain applications. Moreover, the objects in the vmTable, 2105 vmCpuTable, vmCpuAffinityTable, vmStorageTable and 2106 vmNetworkTable list information about the virtual machines and their 2107 virtual resource allocation. Some may wish not to disclose to others 2108 how many and what virtual machines they are operating. 2110 It is thus important to control even GET access to these objects and 2111 possibly to even encrypt the values of these object when sending them 2112 over the network via SNMP. Not all versions of SNMP provide features 2113 for such a secure environment. 2115 SNMPv1 by itself is not a secure environment. Even if the network 2116 itself is secure (for example by using IPsec), even then, there is no 2117 control as to who on the secure network is allowed to access and GET/ 2118 SET (read/change/create/delete) the objects in this MIB. 2120 It is recommended that the implementers consider using the security 2121 features as provided by the SNMPv3 framework. Specifically, the use 2122 of the User-based Security Model [RFC3414] and the View-based Access 2123 Control Model [RFC3415] is recommended. 2125 It is then a customer/user responsibility to ensure that the SNMP 2126 entity giving access to an instance of this MIB, is properly 2127 configured to give access to the objects only to those principals 2128 (users) that have legitimate rights to indeed GET or SET (change/ 2129 create/delete) them. 2131 9. Contributors 2133 Yuji Sekiya 2134 The University of Tokyo 2135 2-11-16 Yayoi 2136 Bunkyo-ku, Tokyo 113-8658 2137 Japan 2139 Email: sekiya@wide.ad.jp 2141 Cathy Zhou 2142 Huawei Technologies 2143 Bantian, Longgang District 2144 Shenzhen 518129 2145 P.R. China 2147 Email: cathyzhou@huawei.com 2149 Hiroshi Esaki 2150 The University of Tokyo 2151 7-3-1 Hongo 2152 Bunkyo-ku, Tokyo 113-8656 2153 Japan 2155 Email: hiroshi@wide.ad.jp 2157 10. Acknowledgements 2159 The authors like to thank Andy Bierman, David Black, Joe Marcus 2160 Clarke, C.M. Heard, Joel Jaeggli, Tom Petch, Randy Presuhn, and Ian 2161 West for providing helpful comments during the development of this 2162 specification. 2164 Juergen Schoenwaelder was partly funded by Flamingo, a Network of 2165 Excellence project (ICT-318488) supported by the European Commission 2166 under its Seventh Framework Programme. 2168 11. References 2170 11.1. Normative References 2172 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 2173 Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/ 2174 RFC2119, March 1997, 2175 . 2177 [RFC2578] McCloghrie, K., Ed., Perkins, D., Ed., and J. 2178 Schoenwaelder, Ed., "Structure of Management Information 2179 Version 2 (SMIv2)", STD 58, RFC 2578, DOI 10.17487/ 2180 RFC2578, April 1999, 2181 . 2183 [RFC2579] McCloghrie, K., Ed., Perkins, D., Ed., and J. 2184 Schoenwaelder, Ed., "Textual Conventions for SMIv2", STD 2185 58, RFC 2579, DOI 10.17487/RFC2579, April 1999, 2186 . 2188 [RFC2580] McCloghrie, K., Ed., Perkins, D., Ed., and J. 2189 Schoenwaelder, Ed., "Conformance Statements for SMIv2", 2190 STD 58, RFC 2580, DOI 10.17487/RFC2580, April 1999, 2191 . 2193 [RFC2790] Waldbusser, S. and P. Grillo, "Host Resources MIB", RFC 2194 2790, DOI 10.17487/RFC2790, March 2000, 2195 . 2197 [RFC2863] McCloghrie, K. and F. Kastenholz, "The Interfaces Group 2198 MIB", RFC 2863, DOI 10.17487/RFC2863, June 2000, 2199 . 2201 [RFC3413] Levi, D., Meyer, P., and B. Stewart, "Simple Network 2202 Management Protocol (SNMP) Applications", STD 62, RFC 2203 3413, DOI 10.17487/RFC3413, December 2002, 2204 . 2206 [RFC3414] Blumenthal, U. and B. Wijnen, "User-based Security Model 2207 (USM) for version 3 of the Simple Network Management 2208 Protocol (SNMPv3)", STD 62, RFC 3414, DOI 10.17487/ 2209 RFC3414, December 2002, 2210 . 2212 [RFC3415] Wijnen, B., Presuhn, R., and K. McCloghrie, "View-based 2213 Access Control Model (VACM) for the Simple Network 2214 Management Protocol (SNMP)", STD 62, RFC 3415, DOI 10 2215 .17487/RFC3415, December 2002, 2216 . 2218 [RFC3418] Presuhn, R., Ed., "Management Information Base (MIB) for 2219 the Simple Network Management Protocol (SNMP)", STD 62, 2220 RFC 3418, DOI 10.17487/RFC3418, December 2002, 2221 . 2223 [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an 2224 IANA Considerations Section in RFCs", BCP 26, RFC 5226, 2225 DOI 10.17487/RFC5226, May 2008, 2226 . 2228 [RFC6933] Bierman, A., Romascanu, D., Quittek, J., and M. 2229 Chandramouli, "Entity MIB (Version 4)", RFC 6933, DOI 10 2230 .17487/RFC6933, May 2013, 2231 . 2233 11.2. Informative References 2235 [RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart, 2236 "Introduction and Applicability Statements for Internet- 2237 Standard Management Framework", RFC 3410, DOI 10.17487/ 2238 RFC3410, December 2002, 2239 . 2241 [IEEE8021-BRIDGE-MIB] 2242 IEEE, "IEEE8021-BRIDGE-MIB", October 2008, 2243 . 2246 [IEEE8021-Q-BRIDGE-MIB] 2247 IEEE, "IEEE8021-BRIDGE-MIB", October 2008, 2248 . 2251 Appendix A. State Transition Table 2253 +--------------+----------------+--------------+--------------------+ 2254 | State | Change to | Next state | Notification | 2255 | | vmAdminState | | | 2256 | | at the | | | 2257 | | hypervisor or | | | 2258 | | (Event) | | | 2259 +--------------+----------------+--------------+--------------------+ 2260 | suspended | running | resuming | vmResuming | | 2261 | | | | vmBulkResuming | 2262 | | | | | 2263 | suspending | (suspend | suspended | vmSuspended | | 2264 | | operation | | vmBulkSuspended | 2265 | | completed) | | | 2266 | | | | | 2267 | running | suspended | suspending | vmSuspending | | 2268 | | | | vmBulkSuspending | 2269 | | | | | 2270 | | shutdown | shuttingdown | vmShuttingdown | | 2271 | | | | vmBulkShuttingdown | 2272 | | | | | 2273 | | (migration to | migrating | vmMigrating | | 2274 | | other | | vmBulkMingrating | 2275 | | hypervisor | | | 2276 | | initiated) | | | 2277 | | | | | 2278 | resuming | (resume | running | vmRunning | | 2279 | | opeartion | | vmBulkRunning | 2280 | | completed) | | | 2281 | | | | | 2282 | paused | running | running | vmRunning | | 2283 | | | | vmBulkRunning | 2284 | | | | | 2285 | shuttingdown | (shutdown | shutdown | vmShutdown | | 2286 | | operation | | vmBulkShutdown | 2287 | | completed) | | | 2288 | | | | | 2289 | shutdown | running | running | vmRunning | | 2290 | | | | vmBulkRunning | 2291 | | | | | 2292 | | (if this state | migrating | vmMigrating | | 2293 | | entry is | | vmBulkMigrating | 2294 | | created by a | | | 2295 | | migration | | | 2296 | | operation (*) | | | 2297 | | | | | 2298 | | (deletion | (no state) | vmDeleted | | 2299 | | operation | | vmBulkDeleted | 2300 | | completed) | | | 2301 | | | | | 2302 | migrating | (migration | running | vmRunning | | 2303 | | from other | | vmBulkRunning | 2304 | | hypervisor | | | 2305 | | completed) | | | 2306 | | | | | 2307 | | (migration to | shutdown | vmShutdown | | 2308 | | other | | vmBulkShutdown | 2309 | | hypervisor | | | 2310 | | completed) | | | 2311 | | | | | 2312 | preparing | (preparation | shutdown | vmShutdown | | 2313 | | completed) | | vmBulkShutdown | 2314 | | | | | 2315 | crashed | - | - | - | 2316 | | | | | 2317 | | (crashed) | crashed | vmCrashed | | 2318 | | | | vmBulkCrashed | 2319 | | | | | 2320 | (no state) | (preparation | preparing | - | 2321 | | initiated) | | | 2322 | | | | | 2323 | | (migrate from | shutdown (*) | vmShutdown | | 2324 | | other | | vmBulkShutdown | 2325 | | hypervisor | | | 2326 | | initiated) | | | 2327 +--------------+----------------+--------------+--------------------+ 2329 State transition table for vmOperState 2331 Authors' Addresses 2333 Hirochika Asai 2334 The University of Tokyo 2335 7-3-1 Hongo 2336 Bunkyo-ku, Tokyo 113-8656 2337 JP 2339 Phone: +81 3 5841 6748 2340 Email: panda@hongo.wide.ad.jp 2342 Michael MacFaden 2343 VMware Inc. 2345 Email: mrm@vmware.com 2347 Juergen Schoenwaelder 2348 Jacobs University 2349 Campus Ring 1 2350 Bremen 28759 2351 Germany 2353 Email: j.schoenwaelder@jacobs-university.de 2355 Keiichi Shima 2356 IIJ Innovation Institute Inc. 2357 2-10-2 Fujimi 2358 Chiyoda-ku, Tokyo 102-0071 2359 JP 2361 Email: keiichi@iijlab.net 2362 Tina Tsou 2363 Huawei Technologies (USA) 2364 2330 Central Expressway 2365 Santa Clara CA 95050 2366 USA 2368 Email: tina.tsou.zouting@huawei.com