20
Symbolic Simplify your network management Marco Mornati [email protected] This presentation is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike (BY-NC-SA) 3.0 license.

Symbolic: simplify your network management

Embed Size (px)

Citation preview

Page 1: Symbolic: simplify your network management

SymbolicSimplify your network

management

Marco [email protected]

This presentation is licensed under a Creative CommonsAttribution-NonCommercial-ShareAlike (BY-NC-SA) 3.0 license.

Page 2: Symbolic: simplify your network management

What is Symbolic?● Advanced WebBased Ajax Application made

with Groovy/Grails (Web 2.0)

● Manage complex enterprise infrastructures

● Execute commands and scripts on remote machines

● Based on Func (Fedora Unified Network Control)

● Secure SSL guest connection

Page 3: Symbolic: simplify your network management

What is Symbolic?

Page 4: Symbolic: simplify your network management

Why Symbolic?

● Large scale environments● Increasing every day number of machines

(especially virtual machines)● Lots of people to control different

environments

Page 5: Symbolic: simplify your network management

Why Symbolic?

● Tool to take all under control● Centralization of many tools in a single

product (cobbler, puppet, func, oVirt, ...)

Page 6: Symbolic: simplify your network management

Main Functions

● Auto discovering machines info● Call each controlled machine to auto

complete symbolic database

● Func auto alignment● Ask for list of modules installed for specific

machine● Ask for list of methods accessible for each

module

Page 7: Symbolic: simplify your network management

Main Functions

● Scripts execution● Can manage Python, Groovy, Bash, Ruby and

Perl scripts

● User roles definition● Act only on assigned machines and/or scripts

● Schedule Operations● Quartz Framework● Executed by different threads

Page 8: Symbolic: simplify your network management

XML-RPC Server

● Exposes some methods that “external” scripts and program could use

● Protected with HTTP Basic Authentication● User data is stored in database with each

roles

Page 9: Symbolic: simplify your network management

XML-RPC Server

● Scripts Runner Example

Page 10: Symbolic: simplify your network management

Access & Security● Security assured by using Java Framework:

Spring Security

● Provides powerful and flexible security solutions for enterprise applications

● Widely used in Java projects● Personalize each area/page for specific user

group

Page 11: Symbolic: simplify your network management

Access & Security

● Access assured by major login systems● Spring Security Database● LDAP● Kerberos ● Active Directory

Page 12: Symbolic: simplify your network management

Plugins

● Symbolic application dynamic extension provided by external plugin installation● Scripts + library (Jars) added at run time

● Symbolic configuration file specifies plugin folder● Default: /etc/symbolic/plugins

Page 13: Symbolic: simplify your network management

Plugins

● Must be packaged respecting defined structure

/etc/symbolic/plugins/plugin-1-folder

configuration-filescript-file/lib-folder

lib-files /plugin-2-folder

configuration-filescript-file/lib-folder

lib-files

Page 14: Symbolic: simplify your network management

Plugins

● Configuration File● Extension must be .conf● Needs these two properties

● jobName = nameYouWant● JobCron = 0/5 * * * * ? (Respecting Quartz spec.)

jobName = nagios-pluginjobCron = 0/5 * * * * ?

mailType = imapmailHost = mail.byte-code.commailPort = 143mailUname = usernamemailPassword = password

Page 15: Symbolic: simplify your network management

Plugins

● Script File● Supports for groovy scripts● Used as Quartz Job: for scheduled and

autonomous operations

import com.opensymbolic.plugins.nagios.MailReader

MailReader reader = new MailReader()reader.checkNewMessages(mailHost, new Integer(mailPort).intValue(), mailUname, mailPassword)

Page 16: Symbolic: simplify your network management

Plugin

● Lib Folder● Not required● You can store all jars and classes you need to

execute your script● Isolated Class Loader

● No conflicts with different plugins● Problems isolated in a specific plugin

Page 17: Symbolic: simplify your network management

Future

● New skinnable graphic interface

Page 18: Symbolic: simplify your network management

Future

● Problem adaptive plugin● For example a Nagios alarm could activate

some special function in symbolic● This plugin will define only the rules and then

symbolic will decide looking the context of the problem

● Complete Puppet integration● Extend the use of plugin

● Not only Quartz Job (schedulable)

Page 19: Symbolic: simplify your network management

More Info

● Web Site: http://www.opensymbolic.com

● Trac: http://projects.byte-code.com/trac/symbolic

● Git: git://projects.byte-code.com/symbolic

Page 20: Symbolic: simplify your network management

THANK YOU!