Category: DevOps Toolbox

  • Splunk Acquires VictorOps: The End of the Road for Standalone IT Alert Management Tools?

    Splunk Acquires VictorOps: The End of the Road for Standalone IT Alert Management Tools?

    This week, Splunk, the leader in machine data intelligence, announced the acquisition of IT alerting solution VictorOps for $120 million. My congratulations to the VictorOps team for building a solid product for alert management and collaboration, demonstrating a wicked sense of humor and creating some cool T-shirts.

    While the acquisition makes sense on many levels, it does raise broader questions about the need for standalone IT alerting tools. Let me explain why IT alert management as a category faces strong headwinds and how these tools will need to evolve if they are going to remain relevant in a world driven by digital transformation.

    What Do IT Alert Management Tools Actually Do?

    When an IT outage or service disruption occurs in an enterprise, the first order of business is to restore operations back to normal. IT outages can cost you a lot (an hour of downtime can cost you upwards of $100,000 per hour), disrupt your customer experiences and derail employee productivity. To quickly troubleshoot an IT incident, you’ll need to notify the right subject matter experts who can collaborate together to pinpoint root cause for an outage.

    Every day, enterprise network operations center (NOC) teams receive hundreds of alerts from different IT management tools for monitoring, service desk, event correlation and configuration management. A certain percentage of these alerts demand urgent attention from NOC teams who are on-call and readily available for incident support.

    Enter IT alert management tools, whose job it is to manage the notification of messages to personnel based on predefined rules regarding who to notify for a given categorization of event or incident. Tools from PagerDuty, VictorOps, xMatters, OpsGenie and Everbridge alert the right team members using on-call schedules and notify them using a variety of channels including email, text, voicemail and chat. IT alerting tools help you manage the entire incident life cycle, using on-call schedules, alert routing rules and collaborative war rooms.

    Embedded Alert Context: The Missing Piece of the Alert Puzzle

    The fundamental challenge with scaling enterprise alert management is about establishing the right context for a flood of alerts that you’ve just received. Instead of forwarding every single alert that you receive, can you share actionable alerts that your NOC teams can immediately act upon?

    Your IT alerting tool needs the ability to correlate a bunch of alerts into a single event for faster acknowledgment and troubleshooting. Alert consolidation and correlation call for intelligence that can extract signal from the noise and compress alert volumes with the right inferences. Artificial intelligence for IT operations (AIOps) helps you do just that, by applying big data and machine learning techniques to event management data. With AIOps tools, you can handle events and minimize alert noise by delivering timely and actionable insights for incident support. This agility and insight, coupled with intelligent correlation to stay on top of major outages, helps NOC teams by focusing their attention on the incidents that truly matter.

    AIOps + Alert Management = Smarter Incident Management

    Without the ability to apply machine learning algorithms to alert floods, alert management tools act as “dumb forwarders” of IT alerts, inducing alert fatigue and adding to the overall noise. It’s time for alert management to get smarter and contextual with machine learning insights.

    Splunk’s acquisition of VictorOps is a clear sign that alert management tools as a standalone category can’t truly scale without a solid AIOps foundation. With artificial intelligence, IT teams can stop wasting valuable time figuring out incident triage and root cause analysis and ensure faster recovery from crippling outages with the right event analytics.

    — Deepak Jannu

  • Oracle Advances AI Effort to Automate DevOps

    Oracle Advances AI Effort to Automate DevOps

    Oracle today announced the general availability of an expanded Oracle Cloud Platform service that promises to automate most back-end DevOps processes by relying on a combination of machine learning algorithms and other forms of artificial intelligence (AI).

    The Oracle platform-as-a-service (PaaS) environment has also been expanded to include Oracle Mobile Cloud Enterprise, Oracle Data Integration Platform Cloud and Oracle API Platform Cloud alongside existing continuous integration and continuous deployment (CI/CD) cloud service. Oracle also revealed today that later this year it will also add blockchain, security and management and support for additional database workloads, including OLTP and NoSQL, that expand on existing Oracle Database, Oracle Autonomous Data Warehouse Cloud, Oracle Analytics Cloud, Oracle Integration Cloud and Oracle Visual Builder services.

    Siddhartha Agarwal, vice president of product management and strategy at Oracle, said via the cloud service, Oracle plans to automate DevOps processes to the point where organizations will be able to allocate most of their time and effort to building applications. Today, developers are spending as much as 50 percent to 60 percent of their time on DevOps processes rather than writing application code, he said, and the Oracle Cloud platform automates a broad range of operational functions including tuning, patching, backups and upgrades.

    Oracle Cloud Platform is designed to be an infinitely elastic autonomous cloud service that can both anticipate application requirements and dynamically adjust to changing workload conditions. Over time, the platform also will be able to increasingly provide recommendations based on the characteristics of the application workloads being built and deployed, Agarwal said.

    The Oracle API Platform Cloud service, for example, already continuously learns about usage patterns to recommend allocation limits, configurations and policies using predictive algorithms, he said.

    Meanwhile, the Oracle Cloud Mobile Enterprise service provides access to machine learning algorithms that make it much easier to incorporate chatbots into mobile applications, Agarwal said. Machine learning algorithms are now also relied on to create Big Data lakes and the data pipelines needed to make that data available to application developers.

    Those services are all extensions of an Oracle Developer Cloud service for building applications that supports build frameworks such as Maven, Ant, Gradle, npm, Grunt, Gulp and Bower, as well as command line interfaces for Docker, Kubernetes and Terraform. Frameworks such as JUnit and Selenium for both logic and UI testing are also included.

    Agarwal said one of the primary reasons DevOps process have not been as widely adopted across the enterprise is that it’s simply too complicated for most IT organizations to set up and then continuously manage all the underlying infrastructure required. By moving more of the responsibility for the operations side of the DevOps equation on to an autonomous cloud service managed by Oracle, he said, it becomes simpler for enterprise IT organizations to focus their energy on application development processes.

    It may take some time for enterprise IT organizations to get comfortable with ceding that level of control to a cloud service provider. But whatever DevOps path they choose, it’s apparent that machine learning algorithms coupled with other AI advances are about to automate broad swaths of the DevOps universe.

    — Mike Vizard

  • Riverbed Throws Down APM Gauntlet

    Riverbed Throws Down APM Gauntlet

    Riverbed Technology has expanded its approach to unifying application performance management (APM) and user monitoring based on a new architecture for its SteelCentral platform, now capable of supporting tens of thousands of agents monitoring billions of transactions per day.

    Nik Koutsoukos, vice president of product marketing and product management for Riverbed, said auto-tuning and data compression mechanisms combined with cluster architecture now makes it possible to analyze all the data in the enterprise to determine precisely where bottlenecks are adversely affecting user experience.

    In contrast, rival APM offerings only sample transactions and sacrifice metadata as well as depth in terms of being able to delve into a complete stack of software and associated IT infrastructure, he said.

    Koutsoukos noted the way APM is being applied will fundamentally change as organizations embrace digital processes. Most organizations today apply APM sparingly across a limited number of mission-critical applications. But as business processes become digitized, customer satisfaction increasingly will be determined by the quality of the application experience. That can’t be accurately determined without being able to leverage a set of software-as-a-service (SaaS) applications capable of monitoring the entire IT environment, he said.

    Riverbed, with this release of SteelCentral, is also adding analytics infused with artificial intelligence capabilities, as well as machine learning and predictive analytics to keep track of transaction trends over time. This release introduces a “Prism” report that analyzes longitudinally at the conversion funnel for a business transaction flow to visualize trends over time, spot issues and then resolve associated problems.

    In addition, Riverbed is adding support for Riverbed Xirrus Wi-Fi access points, which the company acquired last year, to the SteelCentral platform.

    Industry research suggest that only 5 percent of enterprise applications are actively monitored, Koutsoukos noted, but Riverbed is expecting that to change in a digital age where IT essentially has become the business. More senior business executives are soon going to be equating application performance with customer engagement and, by extension, opportunities to generate revenue.

    Riverbed expects that monitoring all those distributed applications and associated IT infrastructure will be possible only by using a set of software-as-a-service applications, which Koutsoukos said in many cases will pay for itself by eliminating the need for various application and infrastructure monitoring tools in silos across the enterprise.

    Given the relative light adoption of APM tools, the rise of digital business may provide an unexpected benefit for DevOps teams. As line-of-business managers demand more insight into the IT environment, the amount of metrics that should become available to DevOps teams should correspondingly increase. The challenge may lie in educating business managers why those metrics are relevant to them and then getting them to fund their acquisition.

    In the meantime, DevOps teams should be prepared for a lot more questions relating to application performance coming from business managers. Not every one of those questions might be all that informed. But over time, an educated business executive always makes for the best DevOps customer.

    — Mike Vizard

  • Wavefront by VMware Extends Monitoring Reach

    Wavefront by VMware Extends Monitoring Reach

    The gap that exists between the DevOps tools typically made available to traditional enterprise IT sites that have standardized on VMware and what’s typically employed by web-scale companies continues to close.

    The latest edition of the Wavefront analytics and monitoring tools from VMware now comes with pre-packaged support for a range of services running on the Microsoft Azure public cloud in addition to a significant expansion of support for a range of services provided by Amazon Web Services (AWS) and Google.

    Rob Markovich, senior director of marketing for the VMware business unit, said Wavefront has added 35 “out of the box” integrations for third-party applications and services to the software-as-a-service (SaaS) application.

    Wavefront has also added pre-packaged dashboards for Kong, Micrometer, Github and Bitbucket, VMware vRealize Operations, Hadoop MapReduce, Yarn, HDFS, Ceph, FluentD, Couchbase, Lighttpd, CoreOS, PHP-FRM, Papertrail, Rollbar, Suse Linux, Fedora Linux, FreeBSD, NetBSD, OpenBSD and Oracle Linux. Any Wavefront dashboard can be customized using more than 100 analytics functions, including correlation and predictive functions on any metric data source, he said.

    Those additions come on the heels of a wave of investments VMware has made over the last few months spanning everything from cloud extensions to VMware vSphere to embedding analytics within the VMware vRealize IT automation framework.

    Markovich said Wavefront is adding integrations at the rate of 10 to 20 a month—the total number he said should increase to more than 200 by the end of 2018. As organizations embrace various types and classes of cloud-native applications such as microservices, there is a much greater need for monitoring and analytics, especially as organizations begin to better understand the level of dependencies that exist between thousands of microservices, he said.

    In addition, Markovich noted the number of companies encountering that challenge is also starting to increase as almost every company begins to realize it is a software company that happens to sell something else. That doesn’t necessarily mean every organization will be updating applications at the same rate as a web-scale company, but it does means existing IT processes will need to be modernized, he said—for example, more enterprise IT organizations are starting to create site reliability engineering (SRE) teams.

    That shift may not result in every enterprise application being monitored, but it will most definitely increase the number of application workloads within those enterprise IT environments that are continuously monitored.

    There is, of course, no single definition of what officially constitutes DevOps. Every organization will tailor DevOps best practices to fit within the confines of their existing IT culture. In some organizations that shift will be driven from the bottom up, while others will be transformed by an initiative led from the top. At this point, the single biggest inhibitor to DevOps adoption has more to do with IT culture than any given set of technologies. But regardless of an organization’s level of DevOps maturity, VMware is betting there will soon be many more traditional enterprise IT organizations employing monitoring and analytics a lot more broadly than ever.

    — Mike Vizard

  • Can EV Certificates Improve Brand Value and Increase Trust?

    Can EV Certificates Improve Brand Value and Increase Trust?

    Most people know the difference between a website that is completely insecure and unencrypted and one that offers an encrypted session for security. You simply look for whether the URL starts with HTTP and the address bar displays an open padlock, or the URL starts with HTTPS and shows a locked padlock. Within the realm of secure websites, though, not all certificates are created equally. An extended validation certificate — EV certificate, for short — provides a more in-depth validation process than other certificates and may foster more trust from customers as well.

    The difference between an EV certificate and other certificates lies in the verification required to obtain one. Traditional certificates can be acquired by providing organizational information or verifying admin rights of the target domain. On many occasions, though, attackers have found ways to circumvent or subvert the verification process and obtain fraudulent certificates using those methods. The verification process for an EV certificate requires proof that the requesting entity is, in fact, the legal identity that owns and manages the target domain.

    According to Wikipedia, the vetting process for an EV certificate involves a number of additional validation steps: “These include manual checks of all the domain names requested by the applicant, checks against official government sources, checks against independent information sources, and phone calls to the company to confirm the position of the applicant. If the certificate is accepted, the government-registered serial number of the business as well as the physical address are stored in the EV certificate.”

    As attackers have grown more savvy and adapted to the expectation that a website run over HTTPS and have the padlock indicating that it’s secure, they’ve found ways to game the system and create fraudulent or phishing websites that appear to be secure.

    Websites with EV certificates show up differently in browsers with EV support, which includes Microsoft Edge, Microsoft Internet Explorer, Mozilla Firefox, Google Chrome and Apple Safari. In most implementations, websites with EV certificates include more advanced details about the website and the entity behind it, such as the name of the company that owns the certificate and a bar or text that is distinct—usually green—for easy visual verification of a valid EV certificate.

    We’d like to know more about how important secure websites are to you, and whether you know—or would notice—the difference between a website using a traditional certificate and a website using the more secure EV certificate. Please invest five minutes of your time to take a quick survey and help us learn more about the value of EV certificates when it comes to your level of trust online.

    Click here to begin the survey.

    — Tony Bradley

  • CA, IBM Partner to Drive DevOps on the Mainframe

    CA, IBM Partner to Drive DevOps on the Mainframe

    CA Technologies and IBM announced today at the Built to Change Summit they are combining their tools and platforms to bring DevOps process to mainframe environments.

    The two companies are extending their existing relationship to include a partnership to jointly develop and sell new services for IBM’s Cloud Managed Services on z Systems (zCloud). Included in that effort is CA Brightside, a platform for bringing DevOps processes to mainframes using existing open source tools and frameworks such as Jenkins, Gradle and IntelliJ via a command line interface and CA Mainframe Resource Intelligence, a software-as-a-service (SaaS) application for monitoring consumption of mainframe resources.

    Other managed services will be based on CA Service Virtualization software for rapidly testing and modifying applications in place; CA Mainframe Operational Intelligence to monitor applications; and CA Data Content Discovery to find, classify and protect data.

    The services are available today to all IBM Managed Cloud Services for z Systems clients in North America and will then be rolled out globally throughout the rest of 2018.

    Greg Lotko, general manager for mainframe at CA Technologies, said that although CA Technologies competes with IBM when it comes mainframe software, it has a vested interest in making sure mainframes stay relevant at a time when organizations are looking to replace less agile forms of application development that use waterfall and ITIL processes with DevOps methodologies that speed application development. From a practical perspective, end customers are demanding that CA Technologies and IBM work more closely together, he said.

    Barry Becker, vice president of hybrid cloud services for IBM, added that as the line between mainframes and distributed applications continues to blur, it’s clear organizations want to be able to treat mainframes as back-end platforms that make a wide variety of enterprise data available to those applications. That need is driving many those organizations to extend DevOps processes to mainframes.

    Historically, competition for control over application workloads within internal IT organizations between mainframe advocates and proponents of distributed computing  has tended to be fierce. But Becker said that as digital business transformation gains traction, there’s now a greater appreciation for the need to leverage transaction processing and big data applications that are widely deployed on mainframes. Not only is it not practical to rewrite all those applications, he noted, applications running on mainframes are more secure. The creates the need to extend out to the mainframe the DevOps processes that are being used to build distributed applications, he said.

    Zealotry that tends to focus on the merits of one platform above all others is usually counterproductive. The rise of DevOps presents organizations with an opportunity to bridge a divide within their organizations that, in some cases, is decades old. Of course, mainframe proponents are not likely to abandon waterfall and IT methodologies overnight. But DevOps processes can mainframe environments a lot more agile at a time when senior business and IT leaders are now judging the merits of one platform versus another increasingly on how flexible it allows the business to become.

    — Mike Vizard

  • Eggplant Extends Scope of AI Applied to Application Testing

    Eggplant Extends Scope of AI Applied to Application Testing

    Reliance on machine learning algorithms and other forms of artificial intelligence (AI) to not just run application tests at scale  but actually construct them may be about to increase.

    The latest release of a Digital Automation Intelligence (DAI) Suite from Eggplant enhances the AI capabilities baked into the testing tool to include the capture and analysis of runtime performance data in a way that enables a testing process to “learn” where potential bottlenecks are hidden. Eggplant CTO Antony Edwards said DAI Suite will then suggest a series of tests designed to make it easier for developers to identify the root cause of the problem.

    The goal is to reduce reliance on humans to construct formulaic tests, which Edwards said often limits the rate at which applications can be deployed and updated.

    Eggplant’s DAI Suite

    Other new capabilities being added to DAI Suite include enhancements to Eggplant Functional, which now takes advantage of AI to discover the elements of a graphical user interface (GUI) to automatically populate the automation logic in an Eggplant AI application model. Eggplant Performance, a load and performance testing product, has been integrated with JMeter, an open source performance testing framework, to enable developers and testers to reuse JMeter assets as well as creating load test scripts. Additionally, new real-time key performance indicators (KPIs) can be employed to shorten the feedback loop between testing and analysis.

    Both Eggplant Manager and Eggplant Automation Cloud are now 10 times faster and provide higher levels of testing scalability, according to the company.

    Edwards noted that, in general, application testing is too formulaic. The end goal should be on identifying the best way to delight an end user rather than merely trying to check a compliance box. That requires being able to test more application use cases at scale without slowing down the overall application development life cycle. In fact, he said the biggest hindrance to DevOps today is a reliance on manual testing processes that are driving a $32 billion testing services sector.

    It’s now only a matter of time before AI is applied more broadly to application testing. As the number of applications being developed increases, the more challenging testing becomes. The longer it takes to conduct those tests the more tempted developers are to short-shrift the testing process altogether, believing whatever issues that might arise can be addressed quickly using agile development methodologies. However, not only are there more dependencies than ever between applications, but also end users are less forgiving. Many of them will not, for example, ever give a mobile application that initially disappoints them a second look. Compounding that pressure is increased reliance on digital business processes, where the quality of the underlying application experience directly correlates to the perception of the value of the corporate brand.

    Developers may not always have the highest regard for application testing. But as IT continues to evolve, chances are high there soon will be many more developers perfectly happy to take advantage of all the AI help they can get.

    — Mike Vizard

  • ChefConf 2018: Chef Grows Beyond Infrastructure to Apps

    ChefConf 2018: Chef Grows Beyond Infrastructure to Apps

    chefconf keynoteHere I am in Chicagoland for my third ChefConf. I caught the keynotes today with Nathan Harvey, Barry Crist, Adam Jacob, Corie Scobie and more. The big news at this year’s event is that Chef is focused on more than just infrastructure and compliance—Chef is bringing automation to apps and the entire software delivery life cycle.

    I spoke with Chef CEO Barry Crist about this and he said there is a sea change taking place with software is delivered. Chef has seen this wave coming and, over the last few years, has been retooling its offerings to match this. Today, Chef Automate and Chef Habitat represent the heart of Chef’s arsenal in its mission to offer the premier platform to automate the software development, deployment and security life cycle.

    I personally have seen this shift over the last few years. I think back to when we launched devopsy.kinsta.cloud. Chef was already a popular solution within the DevOps community; however, most people will tell you that they used Chef for configuration management. It was great to be able to make sure that as you spun up new instances in the cloud, your infrastructure was configured exactly as you wanted. By automating and using a Chef-type of solution, you could spin up new instances at-will and their configuration would be exactly the same or exactly as you desired.

    At the time, that was pretty cutting-edge. People were writing Chef recipes for all kinds of tasks—again, usually around configuring infrastructure.  With the advent of microservices, containers, Docker and Kubernetes, this type of automated deployment has become commonplace. But the need to automate, especially with security and compliance and app deployment, is perhaps an even bigger mission.

    Crist acknowledged these facts during his keynote. In speaking about Habitat, Crist noted that not only did many of Chef’s customers not understand the real story behind Habitat, but that half of Chef’s own employees didn’t, either. One person who did was Julian Dunn, director of product marketing, who I interviewed on DevOps Chats about Habitat when it first launched. Tony Bradley wrote that it could be a game changer back then, as well.

    Habitat has come a long way since then and still has a ways to go to grow into its ambitious potential, but it is very functional right now. Chef has several clients here at ChefConf talking about their Habitat deployments and plans. Chef now tags Habitat with Automate Any App Anywhere – Build, Deploy, Manage.

    Perhaps further along than Habitat, however, is Chef Automate. In fact, Chef Automate 2.0 was announced ChefConf, and it seems to be an almost complete rewrite of the program, as it is now built on Microsoft Go. Here is Chef’s take on Automate 2.0:

    Chef Automate has been rebuilt from the ground up to provide performance, scale and advanced analytics required by enterprises using DevOps at scale to meet the demands of post-digital transformation. Chef Automate now provides a single control plane for infrastructure and compliance automation to enable a closed-loop ‘detect, correct, automate’ process to make infrastructure effortless.

    New features include:

    • Enhanced operational visibility and debugging – New tools and visualizations, including a streaming event feed, trend graphs and a rich query language, help users analyze infrastructure and compliance automation data from a unified dashboard.
    • Compliance scanning and reporting in any environment – Integration with cloud compliance capabilities of InSpec 2 enhances scanning, which can now be used to evaluate cloud configurations (AWS, Azure, Google Cloud) via APIs for compliance on either an ad-hoc or ongoing basis. Chef Automate 2 also supports scanning of Cisco IOS equipment as a significant start on extending modern compliance capabilities to network devices.
    • Re-architected for speed and flexibility – A Go-based microservices architecture, with a modern, performant web UI atop a REST API, enables Automate 2 to support tens of thousands of nodes from a single installation. In-place upgrades with automatic data migration from Chef Automate 1 ensure that customers retain all historical information.

    Additionally, Chef has released something called Chef Workstation. From the release:

    Chef Workstation enables DevOps teams and practitioners to complete ad-hoc DevOps tasks using all of the familiar Chef capabilities, without agents. This provides a simple and effective way to use Chef to complete tasks and then seamlessly scale those tasks through Chef Automate.

    Capabilities include:

    • New standard desktop/laptop experience for Chef – Includes a new ‘target mode’ for executing Chef recipes or entire cookbooks remotely and Introduces ‘chef’ command as the single point of entry.
    • Foundation for a better workstation experience – Bundling all the tooling previously included in the ChefDK provides an improved user experience and cohesion between tools to deliver a seamless experience for any infrastructure automation task.

    Finally, new enhancements to Inspec, Chef’s compliance and security solution, were announced. Besides security and compliance being built into most everything Chef does, Inspec now sports:

    • Cloud configuration compliance – Verify AWS and Microsoft Azure policies, with Google Cloud Platform support in beta. More than 10 new AWS resources bring it to CIS Level 1 benchmark completeness.
    • Improved out-of-the-box experience – More than 30 new resources, including support for Cisco IOS network devices as agentless targets, are built in.
    • Drastically improved performance – Users now see up to 90 percent performance gains on Windows and 30 percent on Linux/Unix.

    I will report more as it comes here in Chicago and ChefConf 2018.

    — Alan Shimel

  • Chef Embraces Microservices to Advance IT Automation

    Chef Embraces Microservices to Advance IT Automation

    Chef at the ChefConf 2018 conference today unveiled a series of DevOps offerings, including a revamped version of Chef Automate that has been rewritten using the Go programing language to improve performance and scalability. Now based on a microservices architecture, Chef Automate 2.0 a new user interface based on a REST application programming interface (API) that also serves to enhance integration. There also are a variety of visibility and debugging tools built into the platform, including a streaming event feed, trend graphs and a query language.

    Chef Automate

    At the same time, Chef unveiled Chef Workstation, which enables members of a DevOps team to take advantage of IT automation capabilities on a local PC without having to load any agents.

    Chef also updated its Habitat application release management software to include support for Kubernetes Operator for Habitat and the Open Service Broker originally developed by the Cloud Foundry Foundation, the ability to export to Azure Container Service (AKS), a Helm chart exporter for Kubernetes clusters and integration with operational analytics software from Splunk. Habitat also is now available in an on-premises edition as well as as a software-as-service (SaaS) application.

    Finally, Chef updated InSpec, the company’s compliance automation tool. The latest version can now verify Amazon Web Services (AWS) and Microsoft Azure policies, while support for the Google Cloud Platform support is in beta. InSpec also now has built-in support for more than 30 new resources, including Cisco IOS network devices as agentless targets.

    Chef is touting InSpec performance gains of 90 percent on Windows and 30 percent on Linux systems.

    Julian Dunn, director of product marketing for Chef, said as more companies transition to emerging technologies such as containers and Kubernetes, the need to rely on IT automation frameworks increases. In fact, while container use is widespread, more than half (51 percent) of 347 application and operations professionals surveyed by Dimensional Research on behalf of Chef said they have fewer than 10 percent of their production applications deployed using containers. Dunn said that survey also finds that adoption of DevOps practices in general are still limited—just over half the respondents (53 percent) said they are using both infrastructure and app automation for DevOps.

    However, 46 percent survey respondents said by 2020 they will have more than a quarter of their applications containerized, while 45 percent said at least a quarter of their application deployments will be based on microservices. That accelerated rate of transition will require IT organizations to rely more on IT automation frameworks to implement DevOps processes, Dunn noted.

    Further complication matters, Dunn said organizations are trying to lift and shift existing applications into multiple public clouds while continuing to develop new applications faster than ever to drive various digital business transformation initiatives.

    There’s no doubt that IT organizations are relying more on IT automation frameworks more than ever. The question is, Which one will they use? There are now more IT automation framework choices than ever. Chef is betting that a comprehensive approach based on a modern microservices architecture spanning both IT management and compliance ultimately will win the day.

    — Mike Vizard

  • Functional Programming: Island of Misfit Functional Programming

    Functional Programming: Island of Misfit Functional Programming

    The age of functional programming is dawning. The hype cycle has heated up, and IT departments are getting both real and perceived benefits out of the idea that a function runs on demand only.

    For some, the benefits are very real. Bursty processing, or things that are frequent and quickly resolved, see a benefit from being implemented on functional architectures, and the cost of functional architectures is arguably far better than the cost of cloud instances. I say “arguably” because you can always cram more onto an underused cloud instance, but you pay as you go—even more literally for functional programming, so additions each have an incremental cost. But it is incremental, and you have the power to choose whether functional is right for any given bit of the architecture.

    So why the title? Remember The Island of Misfit Toys from the much-beloved Christmas story, “Rudolph the Red Nosed Reindeer”? They were all just a little off. In a world flooded with perfectly good toys, they were left unattended and unwanted.

    That is a risk functional runs in the long run, also. The idea that you can pop a function out there, configure the access point (almost ubiquitously a web application firewall entry point, but things change so we’ll stick with the generic “entry point”), and start sending requests is great. The fact that you only pay for that bit of time when your request is actually being serviced is great, too.

    But this ideas assumes security is baked in at the functional level. If you are deploying this function anywhere with a public IP, it assumes hardcore security is baked in.

    And failure to have that security baked in is the first reason you might have a misfit toy.

    By definition, functional programming-based systems are complex systems. They are the ultimate evolution of microservices. They will suffer all of the headaches and heartaches associated with SOA and add on the issues with REST versioning, etc. There will be 50 or 500 functions, each clipping along and doing its thing, composed to make a single application (in a purist world, composed in a functional programming app).

    Some of these functions will become outdated and unused. You can’t leave them laying around, waiting to be abused. Indeed, a new form of financial attack might be to look for just such abandoned toys and start calling them repeatedly and rapidly.

    Imagine coming in one day and having Finance ask you why your bill at functional provider X tripled in the last month, only to find a function you left hanging around was being called for no good reason?

    But the complexity inherent in lots of small bits of code, each doing a specific task, pretty much guarantees there will be cruft left lying around unless you are very careful.

    And that, my friends, is (finally, I know) the point of this blog. Our monitoring tools today lean toward watching the performance of the application, but you need more than that before you go all-in on functional programming. You need build tools that can tell you when a given function is no longer called—from anywhere. That is a tall order which none of the previous distributed methodologies has managed to master, but it is more important in a world where you have functions sitting in various public clouds with public-facing IP addresses.

    There also needs to be a definitive source code scanner. Those are slowly getting better, but imagine if a library the build system pulls in and uses for 20 or 30 different functional programming microbits becomes compromised? We’ve seen enough instances of ignoring the problem is begging to be a victim, so scanning on build is more important with more systems using external libraries. Or more accurately, with external libraries being pulled into more microservices. There are companies/service providers that will validate your external dependencies and only let you load open source libraries they have certified as safe. I’ve never used one, but they’re worth looking into.

    A list of entry points and places they are accessed from is useful for internal-only applications. You can’t do that with a publicly exposed REST API that anyone can call, of course. I’m a developer and a D&D player, so I’ll use that example: Wizards/Hasbro cannot control where this API is being called from. The same is true for any web services APIs that exist to give others access. But internal APIs that are an integral part of internal systems and not called externally? Those you need an automated way to find references to them in internal source and keep a count. Much like garbage collection, you’ll want to take down ones whose count reaches zero.

    The thing is that in many ways functional programming reduces operational complexity. It certainly reduces operational overhead. But that complexity is replaced with a different kind of operational complexity; maintenance becomes a bigger issue, and the already occurring breakup of code into smaller chunks increases, bringing cross-reference complexity along with it.

    Keep that in mind. You will have orphaned functions, you will have security concerns, you will have changed operational complexity. Plan for these things from day one. They are not at all deal breakers, and the benefits of functional are already clear in certain verticals with more general benefits being discovered as I type. But they’re the new problems that will require answers in this new architecture.

    So, build in oversight and tools from the beginning and go see how functional programming could benefit your project. At this time, it isn’t the answer to every problem, but—like most cool new IT things—it is another tool to have at hand when solving problems for the business.

    And don’t let your functional programming microservices end up on the Island of Misfit Functional Programming.

    — Don Macvittie