You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
With Apple's shift to using the ARM64-based architecture on their Apple Silicon chips (also known as "M1 chips"), I believe it would be prudent for Elastic to start distributing the Beats packages' underlying binaries as "Universal 2 binaries". These types of binaries are not exactly "new" (insofar that, back in the day, Apple did a similar thing during their transition between PowerPC and Intel architectures) so there should be more than sufficient documentation on compiling binaries in this manner. Conversely, another alternative to allowing Beats binaries to run natively on Apple Silicon devices would be to compile architecture-specific versions of each Beat agent (i.e. "metricbeat-1.2.3-darwin-x86_64" and "metricbeat-1.2.3-darwin-arm64"). That being said, I believe we would prefer a Universal 2 binary as it decreases the required complexity of our Beats deployment logic (stated more simply: We can deploy a Universal 2 macOS binary to any architecture and have confidence it will work as desired).
It would be amiss of me if I did not acknowledge Apple's Rosetta 2 here; the quick run-down of Rosetta 2 is that it is an application which runs in the background and "translates" x86_64-based binaries to allow them to run on Apple Silicon devices. While Rosetta 2 is of high value for macOS administrators -- as it allows us to get through this transitional period between Intel and Apple Silicon architectures -- it should not be considered a "solution" for software vendors and, instead, should be considered a temporary band-aid that can be used in the interim.
The text was updated successfully, but these errors were encountered:
Universal 2 (and/or ARM64 binaries).
With Apple's shift to using the ARM64-based architecture on their Apple Silicon chips (also known as "M1 chips"), I believe it would be prudent for Elastic to start distributing the Beats packages' underlying binaries as "Universal 2 binaries". These types of binaries are not exactly "new" (insofar that, back in the day, Apple did a similar thing during their transition between PowerPC and Intel architectures) so there should be more than sufficient documentation on compiling binaries in this manner. Conversely, another alternative to allowing Beats binaries to run natively on Apple Silicon devices would be to compile architecture-specific versions of each Beat agent (i.e. "metricbeat-1.2.3-darwin-x86_64" and "metricbeat-1.2.3-darwin-arm64"). That being said, I believe we would prefer a Universal 2 binary as it decreases the required complexity of our Beats deployment logic (stated more simply: We can deploy a Universal 2 macOS binary to any architecture and have confidence it will work as desired).
It would be amiss of me if I did not acknowledge Apple's Rosetta 2 here; the quick run-down of Rosetta 2 is that it is an application which runs in the background and "translates" x86_64-based binaries to allow them to run on Apple Silicon devices. While Rosetta 2 is of high value for macOS administrators -- as it allows us to get through this transitional period between Intel and Apple Silicon architectures -- it should not be considered a "solution" for software vendors and, instead, should be considered a temporary band-aid that can be used in the interim.
The text was updated successfully, but these errors were encountered: