3. About us
Developing a platform for a new breed of social
networking games
Scalability is a must
Back-end developed with Erlang/OTP
And lots of other good stuff
Front-end developed with Flex 4
7. Agenda
SNMP 101
SNMP & Erlang
Agent configuration
Fixed and dynamic custom objects
Standard VM / OTP objects
8. SNMP 101
Simple Network Management Protocol
Introduced in 1988
Control & Monitoring
Anything with an IP address
Usually over UDP port 161
v2 is current, v3 is draft
10. SNMP 101, end
SNMP world is a tree
With OIDs
All our Internet
are belong to DOD
You are 1.3.6.1.4.1.*
11. SNMP 101, end
Management Information Base (MIB)
Define what objects are handled by the agent
"Interesting" syntax
nodeName
OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Erlang node name"
::= { staticOid 1 }
14. Getting started: Configuration
Add all the agent boiler plate configuration
Create a custom MIB
Consider getting a Private Enterprise Number
Compile .mib to .bin
Compile .bin to .hrl (optional)
OIDs, default values, ranges
18. Creating Dynamic Objects
Use tables when OID is not fixed
Indexed rows
Dynamic OID composed of ASCII codes
1.3.6.1.4.1.35458.3.70.111.111.1
==
MyOID.Foo.1
19. SNMP Table: Code
SnmpRow = {Data1, Data2, ..., DataN}
snmpa_local_db:table_create_row(
tableName,
Index,
SnmpRow)
Index being one of Data...
Don't forget the .funcs configuration
21. Standard Erlang SNMP
OTP
Single agent
Table of all nodes in a cluster
General info & stats
OSMON
Local node
Detailed stats
Good luck to find these MIBs :)