symbolic: powerful web interface for func
TRANSCRIPT
Symbolic: powerful web interface for Func
Marco Mornati
IndexWhat is Symbolic?Why Symbolic?User & AuthenticationMachines ManagementModules & OperationsGrouping with TagRun/Scheduling operations & scripts
What is Symbolic?Advanced WebBased Ajax Application made with Groovy/GrailsManage complex enterprise infrastructures
Execute commands and scripts on remote machines
Based on Func (Fedora Unified Network Control)Same Func Linux Distributions: RHEL – Fedora – CentOSSecure SSL guest connection
Why Symbolic?Func born with FuncWeb
Very simple web interfaceMade with Python/TurboGear
Hard diffusion in large scale environmentsJava get large market percentageGet and Give value RHEL/FUNC
All users can become a network/machine administrator
Users & AuthenticationPlain | LDAP | Kerberos Authentication
LDAP used to check credentials and obtains group informationAll others information stored in local database
User Authorities (User Roles inside Symbolic)
Granted Machines and Operations
Some operations make be available in particular situation
Administrator defines association between users, machines and operations
User can see and act only on associated machines and operations (this provide another security step over func)
Machines ManagementAuto discovery of func machines on startup or with “Reload Certs” function
List of machines with a valid func certmaster certificateAdd to database main machines information (hostname, ip)
Symbolic provides a machines management areaDefine Machine Type (physical, guest, host, clusternodes)Add/Delete machinesDefine a cluster like a “nodescontainer”
Auto discovery scriptsLooks for machines on the provided net and get informations
Modules & OperationsDirect relation between func module and symbolic module
Each func module has an entry in Symbolic DB
Operation is a defined function in a specific modulelib_virt mod
start/stop
List of virtual machines
Command modAll linux command line instruction
Administrator can define a list of operations users need to control remote machines
Grouping with TagsA tag is a marker we put on machine, operation or script and means that tagged object is a member of that groupThese groups used for
Shown informations to usersRun command/operation directly on all members of selected group
Run operationsSymbolic homepage is the “operation control center”
Contains all machines defined by administrator grouped in specific tags (if a machine has more tags will be shown inside all groups)For each machine shown enabled operationsIf an operation need user interaction, ask some information to execute process
Run Operations: EngineRemember: Symbolic is just a easytouse web interface for FuncAfter all selections on what we need to do, engine creates all needed instruction and interact with func to generate expected outputImportant engine component
CommandRunnerJobCommandControllerJobFunc ServiceOther Services (?)
Symbolic present and futureWorking on script generation and runningAutodiscovery
MachinesFunc Modules and functions
Improvements in EngineQueue operationSchedule operationResults provided with RSS / EMail
Questions and answers?Some useful resources
Symbolic official websitehttp://www.opensymbolic.com
Project Trac&Sourceshttp://projects.bytecode.com/trac/symbolic