3. Why Programmable Infrastructure?
Every customer has specific needs…
On it
Long Tail of
Unique Needs
Covered by
Today’s Tools
Not Covered by
Any Tool
Demand
Unique requirementsCommon requirements
4. The Evolution of FlyScript
10+ Year
History
Today!
*Timeline is for illustrative purposes only
5. FlyScript – Programmability at All
Layers
Granite
RPM Profiler
Steelhead
RPM SharkStingray TM
Whitewater
Routers
Switches
Servers
Custom Widgets
and UI Integrations
Scripts, Modules,
and Python SDK
REST APIDevelopers
Casual Coders
Application Programmers
Riverbed
Community
Stingray
TrafficScript
Data Plane
Control Plane
Administrators
6. Riverbed FlyScript – Enabling
Programmable Infrastructure
• REST APIs and SDKs enable custom integrations
• Visualize and control on their terms
• Advanced processing with their own tools
Let customers decide how to manage their
infrastructure
• Pull data from multiple sources
• Push configuration to multiple targets
Seamless cross product integration
• Developers get direct access to the nuts and bolts
• Operators implement useful tools in 10 lines of Python
• Integrators pull together a custom portal in a few clicks
Ease of use for all users
7. Example: Custom IT Portal
Data Center
Boston
Profiler
Stingray TM
WAN
San Francisco
Steelhead
Shark
Servers
Users
Key data spread across many
sources
Pull together all sources
Build custom widgets
Drill-down as needed
Profiler
Shark-SF
Shark-Bos
Shark-DC
SH-SF
SH-Bos
SH-DC1
SH-DC2
Stingray TM
FW-DC
SLA-Bos
SLA-SF
Web-Srvrs
DB-Srvs
App-Srvs
Custom IT
Portal
9. TRY IT TODAY!!
● FlyScript Portal v0.1 – now available on GitHub and Splash!
1. Start by installing the Python SDK
2. Install or verify that required packages are installed
3. Then install the FlyScript Portal application
4. Configure with the address of a Cascade Profiler and/or Cascade
Shark
● Accelerate with FlyScript Virtual Machine
1. download and install locally:
• VirtualBox
• VirtualBox Extension Pack
• Vagrant
• git or one of the Github GUI clients: OSX, Windows,
or Eclipse
2. Run one command to install a new VM with FlyScript, FlyScript
Portal, and IPython installed
3. Configure with your Riverbed
10. Example: OPNET + Stingray
● Leverage FlyScript to tie together multiple products
● Bring advanced metrics to the web ops crowd
● Integrate into “continuous deployment” for automated QA and verification
1. Configure
TrafficScript
Stingray TM
Users
2. Inject JS
into session
3. Collect page
load times
Web Servers
Web Pages
12. Overview
● Use FlyScript and Stingray Traffic Manager to
automatically inject OPNET AppResponse JavaScript
● What is Stingray Traffic Manager?
– Layer 7 Application Delivery Controller
– Front ends application servers
● What is OPNET AppResponse Xpert BrowserMetrix?
– Monitors end-user experience for web applications
– Identify application performance problems
– Requires a JavaScript snippet to be added on pages to
monitored
Copyright Riverbed Technology 12
Download the
Developer
Edition for free
13. Typical Process
● Often a manual process
● Maintenance issues
● Web developers
copy and paste
JavaScript code to
all web pages
● Applies to all
JavaScript based
analytics services
Copyright Riverbed Technology 13
14. Enter FlyScript and Stingray
● Stingray TrafficScript can be used to modify the contents
of any web page
– Use TrafficScript to add the JavaScript snippet to all web pages
● FlyScript can be used to manage Stingray
– Use FlyScript to configure Stingray to add the JavaScript snippet
to all web pages
● Fully automated
Copyright Riverbed Technology 14
15. How to get started
● Prerequisites:
– Linux based Operating System
– Python installed on your system
• Usually installed by default
• apt-get install python
Copyright Riverbed Technology 15
16. How to get started
● Visit splash.riverbed.com/flyscript
Copyright Riverbed Technology 16
17. How to get started
● Download the tar ball
Copyright Riverbed Technology 17
18. How to get started
● Untar it: tar zxvf flyscript-0.5.3.tar.gz
● cd flyscript-0.5.3
● python setup.py install
● python examples/flyscript-about.py
– To test the installation
Copyright Riverbed Technology 18
19. Back to OPNET AppResponse
python examples/stingray/appresponse_setup.py
STINGRAY_HOSTNAME -u admin -p password
--clientid=ABCD1234EFGH5678 --appid=123456 --
vserver=nl --host=www.northernlightsastronomy.com
Copyright Riverbed Technology 19
● STINGRAY_HOSTNAME: Stingray IP or hostname
● -u/-p: login/password
● clientid/appid: AppResponse Application settings page
● vserver: Stingray Virtual Server to use
● host: (optional) restrict to a particular host
20. Back to OPNET AppResponse
python examples/stingray/appresponse_setup.py
STINGRAY_HOSTNAME -u admin -p password
--clientid=ABCD1234EFGH5678 --appid=123456 --
vserver=nl --host=www.northernlightsastronomy.com
Copyright Riverbed Technology 20
● STINGRAY_HOSTNAME: Stingray IP or hostname
● -u/-p: login/password
● clientid/appid: AppResponse Application settings page
● vserver: Stingray Virtual Server to use
● host: (optional) restrict to a particular host
21. Functionality is not restricted to OPNET
● Anything that requires a JavaScript snippet to be added
– Google Analytics
– Webtrends
– Get Clicky
– Etc.
Copyright Riverbed Technology 21
22. Example: Software-defined Service
Management
● Integrate with orchestration software for one-click provisioning
● Enable self-service portals for virtual data center deployment
● Support configuration within virtual data centers
Boston
WAN
San Francisco
Users
FlyScript Daemon
Virtual Data Center
Stingray TM
Web Servers App Servers
Cloud SH
Virtual Data Center
Profiler Shark
Web Servers
DB Servers
Stingray TM
Cloud SH
23. Software-defined data center
CASE STUDY
It’s very easy to introduce new services to our
customers without needing programmers to develop
and implement them. Mogul is all in on Dev-Ops;
and with the help of virtualization technologies, we
are able to treat much of our infrastructure as code.
This gives us the benefit to deliver new services to
our customers without the need for installing new
hardware, developing custom software, or
experiencing service interruption. Stingray really
helps us with this.
“
”
– Johannes Blome, business director of Mogul Cloud Services
IMPROVED… customer
experience
REDUCED… time to introduce
new services
ACHIEVED… migration to new
hosting platform
DECREASED… server hardware
costs
Read the complete case study
24. General Applications of FlyScript
• Copy / paste / modify
• Repetitive tasks, simplify execution
Scripting
• “Single pane of glass”
• Restricted configuration and monitoring
Custom Visibility
and Control
• QA Testing / Development – “Continuous deployment”
• Reduce downtime, document processes
Automation
• Third-party management tools, custom software
• Cross-product capabilities
Integration
• Create Provision Monitor Destroy
• Manage licensing, users, configuration
SDN/SDDC
26. FlyScript on the Splash Community
Discussion
Forums
Rich Content
Video Tutorials
Configuration Guides
Developer Friendly
Script Collaboration
Syntax Highlighting
Submit Ideas
Feature Requests
Community Votes
Product Blogs
Product and Feature
Announcements
Social Features
Follow users
Follow content
User Group
Community
RCSP
Community
Mobile
Application
27. Connect with FlyScript Experts!
● Rick Nelson has been posting a series on using the
Stingray REST control API with Python, Ruby and Perl.
● Owen Garrett has been sharing TrafficScript examples
and using FlyScript to create a new Stingray TM service.
● Chris White has written a series on interactive coding with
IPython (parts 1 and 2)
● Mike Garabedian has posted about FlyScript VM and
OAuth Support
● Faisal Memon has shared deployment guides for
integrating OPNET ARX BrowserMetrix with Stingray and
the Stingray Traffic Manager Puppet Module
Notas del editor
Programmability is like having legos – you have the building blocks to create a huge range of capabilities!Programmability also accelerates how quickly new capabilities can be created, made available, and implemented.
Before diving into the details of Riverbed’s programmable infrastructure solutions and FlyScript developer tools, let’s level-set on why we’re doing this.Every customer has needs and requirements specific to their environment. Riverbed has a strong history of delivering solutions for the most common requirements, and we’re always expanding that list of capabiities, but that still leaves a long tail of unique needs, corner cases, and niche requirements. Now we can allow customers to build for their unique needs, as well as allow partners to tailor their solutions. Instead of waiting or using fragile programming work-arounds, we are now putting the power to customize, integrate, and automate into the hands of our customers and partners.
Riverbed’s heritage of programmability stretches back over 10 years, with a vibrant community around TrafficScript for Stingray Traffic Manager.In December 2012, we introduced REST APIs for Cascade Shark, Cascade Profiler, and Stingray Traffic Manager. Documentation is available on our support website.In March 2013, we released a Python SDK built upon the available REST APIs to allow developers to take advantage of this widely known, easy to learn open source programming language. In addition, we are launching a developer community on the new Riverbed Splash Community with resources like code samples, discussion forums, and technical blogs.By April, the first application – FlyScript Portal – became available, along with a deployment guide for using FlyScript to integrate between OPNET BrowserMetrix and Stingray Traffic ManagerOur vision is to make REST APIs available across the Riverbed performance platform. In addition to Python, there are numerous other programming languages that we can begin to support. Developers, operators and integrators will begin to access widgets and application modules shared on the community from Riverbed, our partners, and even other customers like you.
Developers: Access to the raw data and configuration via REST APIs gives network developers power to program their network rather than just automate it. Combine data from multiple devices, leverage reporting from one device to instrument changes on another.Application Programmers: Leverage SDKs in scripting languages such as Python and JavaScript to develop complex monitoring and alerting based on the entire network. Grab examples and tutorials from the community to get started quickly. Integrate with available modules from the community to develop custom applications targeted at the unique problems in their network.Operators: Quickly add custom widgets and reports from devices throughout the network to a common portal website. Add not only visualization widgets, but control functionality as well. Web 2.0 technology provides a powerful platform for managing the network using only the data needed.
So, what does this all mean? With programmable infrastructure, we are opening up a much wider range of possibilities with our solutions. The value of that capability is immense, because:It lets customers decide how to manage their network and application services. As IT becomes more virtualized, automated and orchestrated, programmability is essential to maintaining visibility, achieving scale, and realizing the full potential of data center transformation projects.It lets customers and partners integrate our solutions with each other and other software.It lets a wide range of users innovate with our solutions. To some extent, really committed users have always been able to apply some programmability. But it’s been messy, fragile, and expensive. Now, with supported REST APIs and SDK, developers can use industry standard web services architectures and programming languages.
Our first use case example is where organizations are using SharePoint and other platforms to build custom IT dashboards. Pertinent IT data is spread across many sources, including Cascade Shark, Cascade Profiler, and Stingray Traffic Manager.With FlyScript, reports and dashboard make custom API calls to retrieve key metrics
FlyScript Portal 0.1 includes four widgets for assembling views from Riverbed Performance Management Shark – a continuous, high-speed packet capture and indexing software – and RPM Profiler – an end-to-end network monitoring, reporting, and analytics solution.Data from these monitoring services can be mashed up with other services, like Google Maps.The FlyScript Portal features a dashboard that can be customized to display the various widgets, including the four pre-packaged ones and more to come!
Getting started with FlyScript Portal is easy! Follow these basic instructions to get the Portal up and running. More detail can be found in the README on GitHub.With the FlyScript Virtual Machine, you can easily deploy a new virtual machine with FlyScript and FlyScript Portal already installed.
Our last use case example is a taste of the kind of closed-loop “diagnose and cure” feedback schemes that programmability enables. Here,TrafficScript can simplify the injection of javascript into web sessions delivered to end users. That browser-based javascript can send data back to Riverbed’s AppResponseXpertBrowserMetrix solution to monitor the end-user experience. FlyScript can then be used to analyze that performance and update traffic policies on Stingray Traffic Manager
Our next use case example is in virtualized data centers that are using custom or third-party cloud orchestration software in order to build a software-defined data center. Virtualization demands programmability in order to provision, configure, and monitor services logically instead of physically.With FlyScript you can move away from racking and stacking, to a point-and-click self-service portal for provisioning and configuration
As a service provider in Scandinavia, Mogul hosts a number of business-critical web sites, including some belonging to the Swedish government. The company wanted to upgrade its hosting infrastructure, quickly and seamlessly. By deploying Riverbed Stingray Traffic Manager software and Riverbed Stingray Application Firewall software, Mogul achieved a seamless transition to a new hosting platform. The new platform is more flexible, more scalable, more reliable and more secure. Mogul has also been able to make substantial savings on hardware investment and offer an enhanced end-user experience.The company is all in on Dev-Ops, so FlyScript and TrafficScript was perfect for quickly introducing new services.Read the complete case studyhttp://bit.ly/ZHqNkG
FlyScript developer tools open up a huge range of possibilities. We can’t enumerate them all, but here are some of the broad categories.
In addition to hosting the Python SDK on GitHub, developers, operators and Riverbed customers will find numerous developer resources on the Riverbed Splash Community, including:- Code samples- Discussion forums- Technical blogs
In addition to hosting the Python SDK on GitHub, developers, operators and Riverbed customers will find numerous developer resources on the Riverbed Splash Community, including:- Code samples- Discussion forums- Technical blogs
Splash also provides a way to follow individuals, so these are some of the FlyScript experts that you may want to follow and receive updates when they make new contributions. As you can see they are already very active!