wojciech sliwinski be-co-in felix ehm be-co-in for the middleware team

15
CERN MIDDLEWARE OVERVIEW CMW@GSI 25TH APRIL 2013 Wojciech Sliwinski BE-CO-IN Felix Ehm BE-CO-IN for the Middleware team

Upload: alicia-mcbride

Post on 16-Dec-2015

218 views

Category:

Documents


2 download

TRANSCRIPT

CERN MIDDLEWARE OVERVIEW

CMW@GSI 25TH APRIL 2013

Wojciech Sliwinski BE-CO-IN

Felix Ehm BE-CO-IN

for the Middleware team

Wojciech Sliwinski, CERN Middleware Overview 225th April 2013

Wojciech Sliwinski, CERN Middleware Overview 3

Photo with CCC seen from above

“Operations are our main client”

25th April 2013

25th April 2013 Wojciech Sliwinski, CERN Middleware Overview 4

Fixed Displays

Operator Consoles

Wojciech Sliwinski, CERN Middleware Overview 5

Java Applications

25th April 2013

Wojciech Sliwinski, CERN Middleware Overview

TCP/IP communication services

TCP/IP communication services

TIMING GENERATION

CE

RN

G

IGA

BIT

E

TH

ER

NE

T

TE

CH

NIC

AL

NE

TW

OR

K

FILE SERVERS

APPLICATION SERVERS

SCADA SERVERS

TCP/IP communication services

RT Lynx/OSVME Front Ends

WORLDFIPFront EndsPLC

Alarms (LASER)

AcceleraorLogging

LHC Software Architecture Core (LSA)

Software InterlockSystem

Front-End FESA servers

Business Layer

Front End Layer

CERN Controls System

6

Front-End FESA serversFront-End FESA servers

device servers

PostMortem

Tim

ing

Man

agem

ent

DBSettings &LoggingDiagnostics

MonitoringDIAMON

Controls Middleware

DBSettings &Logging

DB:Settings &LoggingData

Concentrators

Role Based Access Control RBAC

Developed by BE-CO Using BE-CO Frameworks

OP Specific GUIsFixed Displays Expert GUIsSequencerOP Specific GUIs DB Access

Controls Middleware

Java

C/C

++

25th April 2013

Wojciech Sliwinski, CERN Middleware Overview 7

Some Software-Releated Numbers

GUI and Middle-tier (Java) ~8 million lines of production code> 1000 jar files in productionCombined to 400 different GUIs and 200 server programsUp to 1000 processes running on 550 machinesDeveloped by 80 people from 10 different groups

Front-End Layer (C/C++)550 different device types70’000 device instances on 1000 different front-end machinesDeveloped by 80 people from 8 different groups

25th April 2013

Wojciech Sliwinski, CERN Middleware Overview 8

Middleware Mandate & Scope

Standard set of MW solutions Centrally managed services Track & optimize runtime parameters Well defined feedback channel for users Provide support & follow-up issues

Scope: CERN Accelerator Complex Operational 24*7*365 Must be Reliable & High Quality In all Eqp. groups (3 dpts: BE, EN, TE)

GUI Applications

Control Logic

Middleware

Control System

25th April 2013

Wojciech Sliwinski, CERN Middleware Overview 9

CMW in the Controls System

LHC MACHINE

GENERAL PURPOSE

NETWORK

OPERATORCONSOLES

OPERATORCONSOLES

FIXEDDISPLAYS

CE

RN

G

IGA

BIT

E

TH

ER

NE

T

TE

CH

NIC

AL

NE

TW

OR

K

FILE SERVERS APPLICATION SERVERSSCADA SERVERS

RT Lynx/OSVME FRONT ENDS

WORLDFIPFront Ends PLCs

ACTUATORS AND SENSORSCRYOGENICS, VACUUM, ETC…

QUENCH PROTECTION AGENTS,POWER CONVERTERS FUNCTIONSGENERATORS, CRYO TEMPERATURE SENSORS…

BEAM POSITION MONITORS,BEAM LOSS MONITORS,BEAM INTERLOCKS,RF SYSTEMS, ETC…

Wor

ldF

IPS

EG

ME

NT

(1,

2.5

MB

its/s

ec)

PR

OF

IBU

S

FIP

/IO

TCP/IP communication services

OP

TIC

AL

FIB

ER

S

TCP/IP communication services

TCP/IP communication services

TIMING GENERATION

TT

T

T

TT

T T T T

DIR

EC

T I/

O

PR

ES

EN

TA

TIO

N T

IER

MID

DL

E T

IER

R

ES

OU

RC

E T

IER

CMW client (C++/Java)JAPC

GUIs, LabView, RADE

CMW client (Java)JAPC

Logging, LSA, InCA, SIS

CMW client/server (C++/Java)Proxy, DIP, AlarmMon, AQ

CMW server (C++)FESA, FGC, GM

CMW server (C++)PVSS (Cryo, Vacuum)

JMS client (Java)GUIs

JMS client (Java)Servers: Logging, InCA, SIS

25th April 2013

Wojciech Sliwinski, CERN Middleware Overview 10

CMW in the Controls System

25th April 2013

Wojciech Sliwinski, CERN Middleware Overview 11

CMW ArchitectureUser written

Middleware

Central services

Physical Devices (BI, BT, COLL, PC, RF, …)

Java Control Programs

RDA Client API (C++/Java)Device/Property Model

DirectoryService

ConfigurationDatabase

CCDB

VB, Excel, LabView

ServersClients

Virtual Devices(Java)

PS-GMServer

FESAServer

FGCServer

PVSSGateway

C++ Programs

MoreServers

Administrationconsole

Passerelle C++

ProxyServer

CMW InfrastructureCORBA-IIOP

ConfigurationServer

Log/TracingService

DIP GWAlarmMon

Wojciech Sliwinski, BE-CO TC: Middleware Progress Report and Plans25th April 2013

RDA Server API (C++/Java)Device/Property Model

RBAC A1Service

DirectoryService

RBAC A1Service

Wojciech Sliwinski, CERN Middleware Overview 12

MW Services & Components

RDA Directory Service RBAC

JMS Brokers CMW Proxies DIP Gateways

Passerelle Tracing Facility JAPC

Feedback (ACET)

Metrics (ACET) SIP4C++ Common

Makefile

CoreActivities

Primary Contributor

25th April 2013

Wojciech Sliwinski, CERN Middleware Overview 13

Middleware Infrastructure in numbers

4’000 CMW Servers 85’000 Devices => 2’000’000 Properties

24 Proxies (10 Injectors, 14 LHC) 20 JMS Brokers (10 single Brokers, 5 HA Clusters) 15 DIP Gateways 2 RBAC A1 Servers 2 Directory Servers 1 Configuration Server 1 Log Converter & DB Writer

Middleware Core

25th April 2013

Wojciech Sliwinski, CERN Middleware Overview 14

Middleware Software in numbers

21 Java modules 15 C++ modulescmw-directory-server

2 C modules

1 Ada module

japcjapc-contextjapc-directory-clientjapc-ext-cmwrdajapc-ext-dbjapcs-ext-remotejapc-ext-yamijapc-value...

>10 JAPC Core modules

Complex & huge codebase to maintain!!

cmw-directory-client-cppcmw-ext-fesa-cppcmw-gm-cppcmw-log-cppcmw-log-stomp-cppcmw-log-syslog-cppcmw-passerellecmw-proxy-cppcmw-rbac-cppcmw-rda-cppcmw-serializer-cppcmw-stomp-cppcmw-tools-cppcmw-util-cppcmw-yami-server-cpp

cmw-feedback-ccmw-feedback-shmem-c

cmw-admin-guicmw-config-servercmw-device-explorer-guicmw-dip-gatewaycmw-directory-clientcmw-log-clientcmw-log-client-guicmw-log-commoncmw-log-convertercmw-log-log4jcmw-log-registrycmw-log-servercmw-log-writercmw-rdacmw-serializercmw-toolscmw-yami-serverrbac-clientrbac-serverrbac-utilrbac-util-gui

25th April 2013

Wojciech Sliwinski, CERN Middleware Overview 15

Middleware Team

Wojtek Sliwinski (Lead) 100% – Directory, RDA, Proxy, RBACFelix Ehm 30% – JMS, Log/Tracing, Feedback/MetricsJoel Lauener 90% – CMW Admin, Directory, RDA, GM, DIP Gw.Kris Kostro 20% – DIP Gateways, RDA3Wojtek Buczak 30% – JAPC CoreIlia Yastrebov 100% – RDA, RBAC, Passerelle, Proxy, LogRadoslaw Orecki 100% – Directory, RDA3

Support: [email protected], [email protected]

Docs: http://wikis/display/MW

25th April 2013