☁️ Optimized Amazon Linux 2 images for OpenStack and Proxmox environments with cloud-init support
📖 Explore the docs »
🐛 Report Bug
·
💡 Request Feature
This project provides optimized Amazon Linux 2 images specifically designed for OpenStack and Proxmox cloud environments. Amazon Linux 2 is AWS's enterprise-grade Linux distribution that provides a stable, secure, and high-performance execution environment for applications.
Our build process downloads the official Amazon Linux 2 KVM images directly from AWS's public repository and customizes them using libguestfs tools to ensure seamless OpenStack integration. The customization process includes:
- ☁️ Cloud-init integration: Enhanced OpenStack datasource configuration for automated provisioning
- 🔧 Minimal modifications: Preserves the original Amazon Linux 2 experience with only essential cloud adaptations
- 📦 Clean deployment: Ready-to-use images with optimized cloud-init configuration
- 💾 Storage optimization: Image sparsification and compression for efficient deployment
- 🏢 Enterprise-ready: Based on AWS's production-grade Amazon Linux 2 distribution
- 🔒 Security-focused: Inherits AWS security standards and regular updates
- ⚡ Performance optimized: Lightweight and efficient for cloud workloads
- 🌐 Cloud-native: Full cloud-init support with OpenStack-specific datasources
- 🤖 Automated builds: Images automatically updated when AWS releases new versions
- 🔄 Minimal changes: Maintains compatibility with existing Amazon Linux 2 workflows
Images are automatically built and released when AWS publishes new Amazon Linux 2 versions on their official repository. The CI/CD pipeline ensures fresh images with the latest security updates and cloud optimizations.
- Set your OpenStack environment variables
- Download the latest image from the 📥 repository page
- Upload image to your OpenStack environment:
openstack image create --disk-format=qcow2 --container-format=bare --min-disk 25 --file amzn2-kvm-<VERSION>-x86_64.xfs.gpt.qcow2 'Amazon Linux 2'
-
Download the latest image from the 📥 repository page
-
Copy the image to your Proxmox storage:
scp amzn2-kvm-<VERSION>-x86_64.xfs.gpt.qcow2 root@proxmox-host:/var/lib/vz/template/iso/
-
Create a new VM using the uploaded image:
# Create VM with cloud-init support qm create <VMID> --name amazon-linux-template --memory 1024 --cores 2 --net0 virtio,bridge=vmbr0 # Import the disk qm importdisk <VMID> amzn2-kvm-<VERSION>-x86_64.xfs.gpt.qcow2 <STORAGE> # Configure the VM qm set <VMID> --scsihw virtio-scsi-pci --scsi0 <STORAGE>:vm-<VMID>-disk-0 qm set <VMID> --boot c --bootdisk scsi0 qm set <VMID> --ide2 <STORAGE>:cloudinit qm set <VMID> --serial0 socket --vga serial0
-
Configure cloud-init settings:
# Example cloud-init configuration qm set <VMID> --ciuser ec2-user --cipassword <PASSWORD> qm set <VMID> --sshkeys ~/.ssh/authorized_keys qm set <VMID> --ipconfig0 ip=dhcp
- Default user:
ec2-user(maintains AWS compatibility) - SSH access: Key-based authentication enabled by default
- Cloud-init: Configured with OpenStack, NoCloud, and ConfigDrive datasources
- Package manager: YUM with security updates enabled
- Root access: Disabled by default (use sudo with ec2-user)
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! ⭐ Thanks again!
- 🍴 Fork the Project
- 🌿 Create your Feature Branch (
git checkout -b feature/AmazingFeature) - 💾 Commit your Changes (
git commit -m 'Add some AmazingFeature') - 📤 Push to the Branch (
git push origin feature/AmazingFeature) - 🔀 Open a Pull Request
Distributed under the GPL-2.0 License. See LICENSE.md for more information.
Kevin Allioli - 🐦 @NetArchitect404 - 📧 kevin@netarch.cloud
Project Link: 🔗 https://github.com/open-img-cloud/amazon-linux-2