ECS Agent AppArmor support (aka Ubuntu 22+ support) #4062
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This is a followup to #3941. That PR was reverted because an issue was discovered that affects customers who are running Ubuntu on the EC2 launch type. This issue was not discovered pre-launch because our team was not testing Ubuntu on the EC2 launch type, we only tested Ubuntu on the EXTERNAL launch type in our automated regression testing.
Since then we have added support for testing Ubuntu on the EC2 launch type to our automated regression testing framework, and have fixed the AppArmor DENY that was causing the issue on Ubuntu on EC2 (
network netlink
permission)This change will introduce ecs-agent-default apparmor profile which adds support for ubuntu22 platforms as with Ubuntu 22, Ubuntu defaults both to docker 20.10.x+ and CgroupsV2. Creating ECS’s cgroups require extra DBUSpermissions in CgroupsV2. This ecs-default apparmor profile will provide the required permissions.
Implementation details
The changs are in ecs-init:
Testing
New tests cover the changes: yes
Description for the changelog
Enhancement: Add AppArmor support
Licensing
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.