1
2
Salt Air 19!
!
SaltStack RAET!
!
Thomas Hatch, SaltStack CTO!
&!
Sam Smith, SaltStack director product development
The need for speed
• From server closet to Web scale, speed and flexibility
matters;!
• SaltStack built for speed and scale at any level;!
• SaltStack supports:!
• SSH!
– Good for limited use cases!
– 50x faster than other other SSH-based tools!
• ØMQ!
– Super fast!
– Good for many use cases, but…!
• RAET (Reliable asynchronous event transport)!
– Even faster!
– From tens of thousands to hundreds of thousands!
– Driven by customer demand (massive infrastructures)!
– More control and infrastructure visibility
ØMQ background and overview
• ØMQ!
• The fastest of the integrated queuing services!
• Integrates PubSub Queueing into custom TCP Sockets!
• Difficult to observe and manage problems under load!
• TCP socket delays, reconnect problems!
• Suited for multi-process architectures, context
switching overhead, blocking I/O!
• TCP connection limits, presence, latency
SaltStack RAET protocol
• Bringing established automation technology to Salt;!
• Built on a precedent of successful automation
concepts;!
• Support for UDP sockets in addition to TCP;!
• Transactions for reliability;!
• More async;!
• Built in crypto (CurveCP);!
• Built to run on Python2, Python3, PyPy.
5
SaltStack RAET layering
• Micro-threaded architecture with non-blocking I/O;!
• Separates event Pub / Sub queue from socket-based transport
layer;!
• Optimize queueing and transport independently;!
• More modularity;!
• Better observability of issues and management of performance
under load;!
• More fine-grained management of events;!
• More maintainable code.
SaltStack RAET architecture
• Modular and nested architecture!
• Inter-host communication is transactioned UDP!
• Inter-process communication is paged UXD!
• Unified event-message routing!
• Fully signed and encrypted UDP comms
SaltStack RAET
• Built for massive scale to support SaltStack
Enterprise customer environments;!
• Go faster;!
• Driven by customer and user requirements;!
• More flexibility (SSH, ØMQ, now RAET);!
• Salt on RAET appears the same to the user as Salt
on ØMQ.
8
Thank You
9
www.saltstack.com
@saltstackinc
freenode IRC channel: #salt
https://github.com/saltstack/salt
For more information about SaltStack RAET, please visit: 	

https://github.com/saltstack/raet

Salt Air 19 - Intro to SaltStack RAET (reliable asyncronous event transport)

  • 1.
  • 2.
    2 Salt Air 19! ! SaltStackRAET! ! Thomas Hatch, SaltStack CTO! &! Sam Smith, SaltStack director product development
  • 3.
    The need forspeed • From server closet to Web scale, speed and flexibility matters;! • SaltStack built for speed and scale at any level;! • SaltStack supports:! • SSH! – Good for limited use cases! – 50x faster than other other SSH-based tools! • ØMQ! – Super fast! – Good for many use cases, but…! • RAET (Reliable asynchronous event transport)! – Even faster! – From tens of thousands to hundreds of thousands! – Driven by customer demand (massive infrastructures)! – More control and infrastructure visibility
  • 4.
    ØMQ background andoverview • ØMQ! • The fastest of the integrated queuing services! • Integrates PubSub Queueing into custom TCP Sockets! • Difficult to observe and manage problems under load! • TCP socket delays, reconnect problems! • Suited for multi-process architectures, context switching overhead, blocking I/O! • TCP connection limits, presence, latency
  • 5.
    SaltStack RAET protocol •Bringing established automation technology to Salt;! • Built on a precedent of successful automation concepts;! • Support for UDP sockets in addition to TCP;! • Transactions for reliability;! • More async;! • Built in crypto (CurveCP);! • Built to run on Python2, Python3, PyPy. 5
  • 6.
    SaltStack RAET layering •Micro-threaded architecture with non-blocking I/O;! • Separates event Pub / Sub queue from socket-based transport layer;! • Optimize queueing and transport independently;! • More modularity;! • Better observability of issues and management of performance under load;! • More fine-grained management of events;! • More maintainable code.
  • 7.
    SaltStack RAET architecture •Modular and nested architecture! • Inter-host communication is transactioned UDP! • Inter-process communication is paged UXD! • Unified event-message routing! • Fully signed and encrypted UDP comms
  • 8.
    SaltStack RAET • Builtfor massive scale to support SaltStack Enterprise customer environments;! • Go faster;! • Driven by customer and user requirements;! • More flexibility (SSH, ØMQ, now RAET);! • Salt on RAET appears the same to the user as Salt on ØMQ. 8
  • 9.
    Thank You 9 www.saltstack.com @saltstackinc freenode IRCchannel: #salt https://github.com/saltstack/salt For more information about SaltStack RAET, please visit: https://github.com/saltstack/raet