openMIC Version 1.3+
open Meter Information Collector (c) Grid Protection Alliance 2010-2021 Note: openMIC EE is not open source and requires a license
GitHub Repository: https://github.com/GridProtectionAlliance/openMIC
Hosting Hardware Requirements
- System Memory: Min: 8 GB; Recommended: 32 GB
- Processing Resources: Minimum: 2 cores, 2 GHz; Recommended: 4+ cores, 3 GHz
- Local Storage Space: Typically less than 1 GB. This includes the space required for openMIC logs.
Hosting Systems Requirements
- Minimum OS: Windows Server 2012 R2 – newer versions are recommended, latest tested version Windows Server 2019. openMIC requires a 64-bit OS.
- Minimum Relational Database
2: Microsoft SQL Server 2012 – newer versions recommended, latest tested version SQL Server 2019. PostgreSQL, MySQL, Oracle and SQLite databases are also supported. Note that SQLite is useful for initial or test installation since it requires no externally installed software. However, SQLlite is not recommended for large test installations or for production deployment at any scale.
- Prerequisite Software: .NET 4.6+
- Supported Browsers (for the optional browser-based administration tool): Google Chrome or Microsoft Edge (Chromium-based version)
Multi-node openMIC Requirements
- Each system in multi-node deployment, i.e., a pool, will need to meet the specified hosting hardware and system requirements.
- It is recommended that enough nodes be deployed in the multi-node pool such that even with a loss of two nodes, the remaining nodes can carry the data collection load without falling behind.
- One system in a multi-node pool will be configured to be the primary scheduler, which includes scheduling downloads to itself. The primary scheduler system should be configured in a fail-over cluster configuration of at least two machines. All remaining machines in the multi-node pool can be standalone systems.
Default Service Account:
The “NT SERVICE\openMIC” is a managed local account, also known as a “virtual account”. The openMIC virtual account has only the rights assigned to it by the installer, at a minimum, read-write access to the openMIC install folder. If the openMIC needs more specific domain-level access, e.g., an account for database access, it is recommended to use a Group Managed Service Account or gMSA. A gMSA will provide similar security and password-free administrative features as a virtual account, but operates at a domain level.
The openMIC virtual account provides the following features:
- It is automatically managed
- It can be setup to access the network in a domain environment as
- It requires no password management (password is not known nor accessible to users)
|Primary Web Interface
|Service Console Access
|Alarm Data Webservice
|STAT Grafana API
Embedded Third-Party Code Components
The components listed below are embedded within GPA's installation package and do not need to be installed separately. They are shown here to provide transparency and to facilitate integration, interoperability, and security assessments.
- AjaxMin - Microsoft-provided utility to reduce size of JS and CSS files
- Antlr - A generalized parser
- DotNetZip - Zip file manipulation libraries
- DotRas - RAS (dialing) services for .NET
- ExpressionEvaluator - Mathmatical expression evaluator
- EzDnaApi - eDNA Historian API
- FLEE - Fast expression evaluator
- Json.NET - Json framework for use within .NET
- Misakai.Kafka - High-performance C# client for Apache Kafka
- MongoDB - Supported, but optional, no-SQL database
- NAudio - .NET library to play back audio files (used for product demonstrations)
- NModbus4 - C# Modbus Protocol tools
- Npgsql - Provides .NET access to PostrgeSQL database systems
- OSIsoft.AFSDK - OSIsoft PI Asset Framework API
- Owin - Interface between .NET web servers and applications
- Protobuf - Libraries for using Google's mechanism for serializing structured data
- RazorEngine - Microsoft's Razor parsing engine
- Report.NET - Ritchie Carroll's fork of Otto Mayer's Report.NET that is used to create PDF reports
- System.Data.SQLite - Supported, but optional, relational database
- ZeroMQ - Supported, but optional, light weight message bus
1. openMIC Enterprise Edition requires a license and a maintenance agreement with GPA.
2. The relational database is only used to hold configuration and metadata, it is not used to archive any received streaming time-series data or event data. As a result, database size is directly correlated to number of configured devices and will ususally be relatively small.
3. Time-series Framework Secure Service Remoting.