FreeBSD provides Flexibility and Performance for NetApp’s ONTAP Data Management System
NetApp is an intelligent data infrastructure company that provides unified data storage, integrated data services, and cloud operations solutions to enterprise customers. Their endurance as a technology leader and their industry-leading products help organizations manage data and applications in both on-premises and hybrid cloud environments. FreeBSD is an integral part of NetApp’s success story and a stable component of its products. Here’s how that came to be and why the relationship continues over time.
History in the making…
NetApp and the Berkeley Software Distribution (BSD) have a long history together. In 2004, NetApp leadership decided to base NetApp ONTAP, the underlying data management software across their entire product range, on a more performance-driven system: FreeBSD. A huge factor in that decision was the BSD licensing model, and from version 6.0 in 2004 to version 14.0 today, FreeBSD has remained a constant and up-to-date component in NetApp.
NetApp needed a licensing model to incorporate its proprietary technology into their new data management system without worrying about potential software licensing issues. NetApp considered other BSD distributions but eventually settled on FreeBSD for its focus on performance and its balance with security. NetApp’s successful experience with FreeBSD has led them to increase its use over the years and, most recently, to change FreeBSD’s implementation within ONTAP.
FreeBSD has been a reliable component within NetApp ONTAP due to its flexibility in implementation and industry-leading stability. In the past, NetApp used an older version of FreeBSD, but now it tracks closer to the current release (also known as “tracking head” within the FreeBSD Community).
FreeBSD has been implemented in many ways across different organizations and for many applications. Some organizations may prefer to track close-to-head like NetApp or to track head like Netflix, while some decide to remain a few versions back. FreeBSD provides stability, flexibility, and ease of upgrades for organizations to choose an implementation style that works best for their specific use case, whether hanging back a few releases or tracking the most current release of the Project.
NetApp and The FreeBSD Community
The FreeBSD Project is run by a core team of FreeBSD committers with many contributors who have direct Git access to FreeBSD’s master repository. The FreeBSD Core Team is responsible for facilitating the project’s operations. The FreeBSD Core Team is elected by the active developers within the FreeBSD project itself. This policy of open and democratic governance and community focus helps NetApp be more comfortable about FreeBSD’s future, which ultimately helps them feel more comfortable tracking closer to the latest release of FreeBSD.
FreeBSD’s vibrant and supportive developer and user community is also an excellent resource for troubleshooting and learning. In fact, NetApp received personal guidance from another commercial FreeBSD user, which served as their inspiration to track closer to the most current release of FreeBSD. NetApp also attends FreeBSD conferences and events, like BSDCan and the Vendor Summit, which have proved an excellent way for NetApp developers to meet and engage with the FreeBSD community.
NetApp contributes to FreeBSD in many ways, including periodically hosting FreeBSD Foundation events, making regular bug fixes and enhancements, and providing financial support to the FreeBSD Foundation. Notably, NetApp has an interesting upstreaming strategy. NetApp has partnered with Klara Systems for their commercial support and upstreams through Klara, as well. NetApp also has a comprehensive continuous integration test suite that is run daily against their codebase, which includes FreeBSD. When the test encounters issues with FreeBSD, NetApp reports them through Klara, and Klara changes upstream. NetApp’s engineers have also upstreamed new technology to FreeBSD in the past, like bhyve, the BSD-licensed hypervisor, and in recent years, NetApp has upstreamed nearly 300 changes.
Getting started with FreeBSD
NetApp advises other organizations looking for a high-performance operating system to consider FreeBSD for its permissive software license, vibrant and supportive community, and strong focus on scalability, stability, and security.
When it comes to implementation, NetApp offers some parting words of wisdom:
- Start slow and build momentum as you ramp up on FreeBSD.
- Stay current by upgrading FreeBSD regularly and try to stay as close to the latest release as possible.
- Understand FreeBSD’s philosophy and vision.
- Choose the right hardware platform that is supported by FreeBSD.
- Consider contracting with companies, like Klara, that provide commercial support for FreeBSD.
- Limit private customizations to business critical IP and upstream-first everything else.
The greatest part about FreeBSD is that it’s free, and you can try it for yourself. To get started with FreeBSD, head over to FreeBSD’s Get FreeBSD page.