Category: Blogs

  • Cutting Costs, Boosting Efficiency: The Economic Benefits of Framework-Defined Infrastructure

    Cutting Costs, Boosting Efficiency: The Economic Benefits of Framework-Defined Infrastructure

    In a world that’s constantly modernizing, developers are at the forefront of progress, embracing cutting-edge tools that match the pace. Industry-standard practices like infrastructure-as-code (IaC) are getting an update: Framework-defined infrastructure (FdI) is an approach to deploying applications that is quickly gaining popularity among developers, where the deployment environment automatically provisions infrastructure derived from the framework and the applications written in it. For developers, this serverless architecture means more reliability, increased productivity, top-of-the-line security and reduced costs.

    To modernize development practices, understanding the role of framework-defined infrastructure in defining and automating infrastructure—and its impact on the development experience in open source frameworks—is crucial.

    The Evolution From IaC to FdI

    Infrastructure-as-code (IaC) is the industry-standard practice for provisioning infrastructure in a repeatable and reliable way. Framework-defined infrastructure (FdI) is an evolution of IaC, where the deployment environment automatically provisions infrastructure derived from the framework and the applications written in it.

    In the early days of servers and the internet, we SSH-ed (or worse) into individual machines, running install scripts or even configuring production software using graphical user interfaces to provision infrastructure. As the web scaled, it became clear that this approach wouldn’t scale with it, and together with the DevOps movement, IaC became the best practice for provisioning infrastructure. The code in IaC represents a version-controlled description of the desired state of the infrastructure—which, when executed, will create the described system state. However, as the web continues to scale, developers must apply new processes and architectures to increase the efficiency of their workflows.

    Enter framework-defined infrastructure.

    Framework-defined infrastructure abstracts over cloud primitives such as servers, message queues and serverless functions, making them mere implementation details of the frameworks’ concepts. Frameworks use well-established patterns to provide structure and abstraction to applications, making them easier to write and understand by managing the high-level application flow while the developer writes code within the hooks provided by it.

    Framework-defined infrastructure takes advantage of both this inversion of control and the predictable structure of framework-based applications like Next.js to automatically map framework concepts onto the appropriate infrastructure without the need for explicit declaration or configuration of the infrastructure.

    Optimization for Serverless Environments

    Since framework-defined infrastructure lets the framework itself define the production behavior, local development can just use the framework’s own tooling, while production infrastructure is automatically configured to be a scaled and optimized representation of the same underlying behavior.

    IaC uses machine-readable files, which developers can version much like software, to provision infrastructure such as physical servers, virtual machines and higher-level services like databases or applications. Serverless architecture—which, despite its name, still uses servers—eliminates the need for developers to manage specific physical or virtual servers.

    Serverless products still require developers to define and deploy their respective serverless primitives, much like more traditional infrastructure. For example, in the archetype of serverless products, AWS Lambda, developers need to create a lambda function and deploy code to it.

    While serverless architecture greatly simplifies managing production infrastructure, the systems that run serverless code are often complex and proprietary, which can cause problems with local development. In a worst-case scenario, local development isn’t possible, and developers must test local changes by making comparatively slow deploys to the production infrastructure. In a best-case scenario, developers must create a local simulation of the complex serverless stack, which must stay up-to-date with the production environment. Framework-defined infrastructure completely eliminates this problem, as it is capable of automating the process for users.

    Framework-Defined Infrastructure and Immutable Deployments

    These days, application code is developed almost exclusively within version control systems such as Git. IaC maintains infrastructure definition in either the same or a sibling version control system. However, production infrastructure itself can only represent limited points in time of the infrastructure’s version history. This is fundamentally incompatible with framework-defined infrastructure, which expects that production infrastructure directly maps to the framework code at the same commit hash.

    Immutable deployments solve this impedance mismatch between an application’s and the infrastructure’s version history. Instead of deploying onto a limited number of infrastructures, immutable deploys create a completely new infrastructure for every single deployment that is ever made. For developers, this means lower IT complexity and failures, improved security, and easier troubleshooting, given there are fewer chances for unpredictable behaviors or unintended consequences of code changes.

    Naturally, immutable deployments are impossible in a world where infrastructure is mapped to finite physical resources. However, in a serverless world, where unused infrastructure can scale to zero, immutable deployments become possible to perform, as unused deployments do not take up physical compute resources beyond the baseline storage needed for their contents.

    Conclusion

    It goes without saying that framework-defined infrastructures rely on IaC as the ultimate infrastructure interface and, hence, could not work without the amazing work of its community. In order to modernize, it’s imperative for developers to leave behind infrastructure constraints and embrace a world where scaling applications becomes effortless, enabling them to optimize efficiency without sacrificing performance. For developers growing frustrated with scaling issues or the burdensome process of their development process, widespread adoption of framework-defined infrastructure is key to improving the developer experience.

  • It’s Funny How We Forgot About Container Sprawl

    It’s Funny How We Forgot About Container Sprawl

    …Because it sure as heck did not forget about us.

    We are (thankfully) past the days when everything was a container. At least, most of us are. Just like anything else, some orgs will continue that approach for reasons both great and terrible. And all of us still use far more containers than we need, I would say. “One container, one function,” works if you are talking about one whole application, and maybe sometimes for busy parts of an application, but it certainly isn’t needed to host a couple of low-use APIs, for example. My favorite example is separate instances of the same exact application for different teams (not business units – that is a good method to separate business units).

    Thankfully, technology is once again saving us from ourselves and our misdeeds. Processing power is no longer an issue, meaning we can spin up a million containers and keep them running until our public cloud bill arrives. So, it’s not about processing power. I cannot remember the last time that an org was bandwidth-limited, so it’s not about the network. The biggest issue is still security. More containers means a bigger footprint, which inevitably creates more vulnerabilities. Right behind that is container inventory management. What is running where, what images are available and what state are they in, which running containers have drifted from their definition, etc.

    I’m a developer that has sometimes done support for the apps I develop. That means that I laugh at your “Our images do not drift because we’re agile and build-driven.” Of course they do, because troubleshooting is real. The real question is, can you get them back into alignment when the ticket closes? The DevOps toolchain is pretty darned good at that if you let it. Changing a running image and telling no one is a terrible idea that still happens nearly every day across our industry. But technology has brought us drift monitoring. We can be notified of changes as they happen. For those in highly sensitive spaces like FinTech, changes can be blocked in production, but for most of us, we want to know when it is happening and who made the change. And we can get that today.

    Technology has also brought us some wonderful scanning tools from SBOM to SCA to Registry. These tools can give us a list of things for security to worry about in our images. In order to reliably generate these lists, we still have to know what images we are keeping and where—but choose a reliable registry or two, fit them into your DevOps processes and scan on commit. Simple and thorough—as long as everyone uses them.

    Thanks to policy and regulation,  container management tools can offer you a detailed list of not just what instances they’re hosting, but metadata like what image they came from. That helps manage inventory, and by now we are all building hierarchies of images from base to application specific.

    So, we can tell what is running, what images are available to run, how far running images have drifted, what known vulnerabilities exist in both our images and our instances and how compliant we are WRT containers. Dunno about you, but it seems technology has our back yet again.

    You are cranking it out, keeping the lights on, and dreaming of more you could be doing. Use the tools we already have to make it easier and the resulting systems more secure and reliable. You won’t regret it. And once again for those of you whose users never say it: Thank you.

     

  • EP 40: DevOps Building Blocks Part 3 – Making the “Sec” in DevSecOps Happen

    EP 40: DevOps Building Blocks Part 3 – Making the “Sec” in DevSecOps Happen

    Many organizations still make the mistake of treating security as an afterthought instead of considering it a top priority from the start, which can lead to breaches and major losses for their business. By adopting a DevSecOps approach, security is integrated early in the SDLC to identify and address potential risks promptly.

    In part 3 of this series, hosts Alan Shimel and Mitch Ashley are joined by Andi Mann (Sageable), Shannon Leitz (ThirdScore) and Tracy Bannon (Mitre) as we discuss how to adopt the “Sec” in the DevSecOps model and promote a security culture within an organization so that security becomes a shared responsibility. We talk about shifting left and the essential strategies and best practices to bridge the gap between development, security and operations.

  • DevOps Dozen² 2023 Finalists Announced

    DevOps Dozen² 2023 Finalists Announced

    We are excited to announce the finalists for the DevOps Dozen² Awards 2023, celebrating the greatest innovators and their achievements in the DevOps space. These individuals and companies have taken an active role in the DevOps community, demonstrating their leadership and commitment to the improvement of our industry in the past year. 

    Congratulations to every one of the finalists. All of your hard work and dedication are greatly appreciated.

    Without further ado, here are the finalists for the DevOps Dozen² Awards 2023:

    DevOps Dozen Community Awards

    1. Best DevOps Industry Implementation

    • Codacy Pioneers Program (Codacy’s Pioneers Programme)
    • DevOps Implementation across the SJP enterprise systems (St James’s Place in Partnership with Intellect Design Arena)

    2. Best DevOps Survey/Analysis/Research

    • State of Digital Quality Report 2023 (Applause)
    • The Shift to a Security Approach for the Full Application Stack Report (Cisco AppDynamics)
    • Accelerate State of DevOps Report (DORA)
    • Charting Observability Research Report (Edge Delta)
    • 2023 State of IaC Report (Firefly)
    • Observability Survey 2023 (Grafana Labs)
    • 2023 Software Artifact State of the Union (JFrog)
    • What’s in Your Open-Source Software (Lineaje)
    • 2023 Software Engineering Benchmarks Report (LinearB)
    • 2023 Observability Forecast Report (New Relic)
    • State of the API Report (Postman)
    • Global State of API Security Report (Traceable AI)

    3. Best DevOps-Related Video Series (video)

    • DevOps Exchange YouTube Channel (DevOps Exchange)
    • DevOps Toolkit (DevOps Toolkit)
    • KubeSimplify (Kubesimplify)
    • Saiyam Pathak (Kubesimplify)
    • Ned in the Cloud’s Terraform Tuesday Series (Ned Bellevance)

    4. Best DevOps-Related Audio Podcast Series

    • The Modern Mainframe (BMC Software)
    • 0800-DEVOPS Podcast by Ivan Krnic (CROZ)
    • DevOps Paradox (DevOps Paradox)
    • Let’s Get To The News (Kubernetes community)
    • Dev Interrupted (LinearB)
    • DevOps in Agile Way Podcast (Pawel Piwosz, DevOps Institute Ambassador)
    • The MLSecOps Podcast (Protect AI)

    5. Best DevOps Book/eBook of the Year

    • Crafting a Mainframe Modernization Roadmap (Broadcom)
    • Strategizing Continuous Delivery in the Cloud (Garima Bajpai , Thomas Schuetz)
    • Redbook: Accelerate Mainframe Application Modernization with Hybrid Cloud (IBM)
    • Industrial DevOps: Build Better Systems Faster by Dr. Suzette Johnson and Robin Yeman (IT Revolution Press)
    • Beyond Agile Auditing: Three Core Components to Revolutionize Your Internal Audit Practices (IT Revolution)

    6. Top DevOps Evangelist

    • Sam Dion (National Bank of Canada)
    • Garima Bajpai (Canada DevOps Community of Practice)
    • Pawel Piwosz (Company or Community: DevOps Institute Ambassador)
    • Amanda Lewis (DORA Community)
    • Fatima Sarah Khalid (GitLab)
    • Ayelet Sachto (Google)
    • Richi Hartmann (Grafana Labs)
    • Stephen Chin (JFrog)
    • Eran Kinsbruner (Lightrun)
    • Mayank Solanki (TataCliq)
    • Viktor Farcic

    7. Best DevOps Transformation (non-vendor)

    • Informatica (Grafana Labs)
    • Pera People Science B.V
    • CGI Life and Health Insurance Agile and DevOps Team

    8. Best DevOps Event of the Year

    • DevOps World 2023 (CloudBees)
    • DevOps Exchange
    • GrafanaCON 2023 (Grafana Labs)
    • swampUP (JFrog)
    • Galaxy ’23 (LaunchDarkly)
    • PASS Data Community Summit (Redgate Software)

    9. Most Innovative DevOps Open Source Project

    • Coder OS (Coder)
    • AIaC (AI generator for infrastructure as code by Firefly.ai)
    • Beyla (Grafana Labs)
    • Jenkins
    • Frogbot (JFrog)
    • Galasa (Open Mainframe Project)
    • OpenRewrite (OpenRewrite / Moderne)
    • CNAPPgoat (Tenable Open Source)
    • Terrascan (Tenable Open Source)

    10. DevOps Executive of the Year (non-vendor)

    • Garima Bajpai (Canada DevOps Community of Practice)
    • Dan Rogers (LaunchDarkly)
    • Idit Levine (Solo.io)
    • Kavitha Srinivasulu (TCS)

    11. Best DevOps Presentation of the Year

    • Time to Rip Off the Training Wheels and Enable End-to-End Automation, a SHARE Atlanta 2023 presentation by Tony Anter and Mark Schettenhelm (BMC Software)
    • Beyond Agile Auditing: The Path to a Better Audit Experience by Clarissa Lucas

    12. Best DevOps.com Article of the Year

    • Six Mainframe DevOps Predictions for 2023 (BMC Software)
    • VS Code for Mainframe: The Enterprise Developer Tipping Point (Broadcom)
    • Muneesh Sharma (Neem Consulting Ltd.)

    DevOps Dozen Tools and Services Awards

    1. Best End-to-End DevOps Tool/Service

    • Bitrise
    • Copado
    • Harness Software Delivery Platform
    • Morpheus v6.x
    • The Netlify Platform
    • PagerDuty Process Automation
    • Sourcegraph’s Code AI Platform
    • BMC AMI DevX
    • Digital.ai AI-Powered DevSecOps Platform
    • JFrog Software Supply Chain Platform
    • Nethopper KAOPS
    • Opsera Unified DevOps Platform
    • Rootly
    • Reliability Management

    2. Best DevOps Repo/GitOps Tool/Service

    • gitStream (LinearB)

    3. Best CI/CD Tool

    • Bitrise
    • BMC AMI DevX Code Pipeline
    • Buildkite Pipelines
    • CircleCI
    • CloudBees CI/CDRO
    • Codefresh CI/CD Solution
    • Copado
    • Octopus Deploy
    • OpsMx Secure CD

    4. Best Value Stream Management Tool

    • Allstacks Platform
    • ValueOps by Broadcom
    • Digital.ai’s Value Stream Management Tool
    • LinearB
    • Planview Value Stream Management

    5. Best Observability Solution

    • Apica
    • BMC Helix Operations Management with AIOps
    • Cribl Stream
    • Grafana Cloud Free Tier
    • Lightrun Observability Platform
    • Memfault
    • The New Relic All-In-One Observability Platform
    • Observe
    • StackState
    • BMC AMI zAdviser Enterprise
    • Cisco Observability Platform
    • Edge Delta
    • Honeycomb.io
    • Logz.io Open 360™ Platform
    • Mezmo Telemetry Pipeline
    • Nobl9 Reliability Center
    • SolarWinds Observability
    • vFunction Architectural Observability Manager

    6. Best DevSecOps Solution

    • Broadcom SBOMz
    • CodeSonar
    • CodeSentry
    • Dazz Remediation Cloud
    • Digital.ai AI-Powered DevSecOps Platform
    • GitLab
    • Mend Application Security Platform by Mend.io
    • Progress Chef
    • DuploCloud DevOps Automation Platform
    • Graylog
    • JFrog Curation
    • Lineaje AI with BOMbots
    • Moderne
    • ReversingLabs Software Supply Chain Security Platform
    • Tanzu Application Platform
    • Xygeni Software Supply Chain Security Solution

    7. Best Testing Service/Tool

    • Telepresence (Ambassador Labs)
    • Applitools
    • BMC AMI DevX Total Test
    • Buildkite Test Analytics
    • Copado
    • Digital.ai Continuous Testing
    • Sauce Labs / Sauce Orchestrate
    • SonarQube
    • Tricentis Mobile

    8. Best Kubernetes Platform/Service

    • BMC Helix Operations Management with AIOps
    • Edge Delta
    • Kalix
    • Rafay Systems

    9. Best Cloud-Native Security Solution/Service

    • The Aqua Platform (Aqua Security)
    • Axiomatics’ Orchestrated Authorization Solution
    • Britive Identity Security Platform
    • Cyera
    • Dazz Remediation Cloud
    • Fleet Endpoint Security Platform (Fleet Device Management, Inc.)
    • JumpCloud Directory Platform
    • The Orca Cloud Security Platform
    • Sumo Logic SaaS Log Analytics Platform
    • Sysdig Secure
    • Tenable Cloud Security
    • Tetrate Istio Subscription (TIS)

    10. Best DevOps for Mainframe Solution

    • BMC AMI DevX tool suite (BMC Software)
    • Code4z (Broadcom)
    • Wazi Deploy (IBM)
    • PopUp Mainframe
    • Rocket DevOps 10.2.2 (Rocket Software)

    11. Best DevOps for DataOps/Database Solution

    • BMC AMI DevOps for Db2® – BMC Software and BMC AMI SQL Performance for Db2® (BMC Software)
    • Coalesce Data Transformation Platform
    • Percona
    • Flyway (Redgate Software)
    • TDengine

    12. Best New DevOps Tool/Service Provider

    • Applause Crowdtesting Solution for DevOps Teams
    • BMC AMI DevX Code Insights (BMC Software)
    • BMC Helix ServiceOps, BMC Helix Operations Management with AIOps, BMC Helix ITSM
    • Devtron
    • Firefly Cloud Asset Management
    • New Relic Grok
    • PerfectScale Platform
    • PopUp Mainframe
    • Recommended Learning Paths (Security Journey)
    • Sourcegraph’s AI coding assistant, Cody
    • Tabnine Chat
    • Vercel

    Finalists were picked by the judges and based on which entry had the most nominations.

    Voting for the winners in all 24 categories is now open to the public. To vote for the leaders, tools and companies you think are truly deserving of an award for their exceptional service to the DevOps community, please visit the DevOps Dozen² website.

    Winners will be chosen from among the finalists, with general public voting weighted for 40% of the final score and our judges’ selections for 60% of the final score. The deadline for public voting is December 31 at 5:00 p.m. ET.

    The winners will be announced at the Predict 2024 Virtual Summit on January 18, 2024, and will receive both digital badges and physical trophies celebrating their achievements.

    Thanks to everyone who has supported the DevOps Dozen² Awards by nominating candidates and voting. Good luck to all the finalists!