Need to get boto3 for AWS on rhel OS

Latest response

Where would I be able to get AWS boto3 rpm bundle, I open the case with support but still waiting on response.

boto3 (AWS SDK for Python)

Regards,

MP

Responses

You should be able to get both the AWS CLI and its boto dependencies via pypi. The pypi utility is in the python2-pip RPM (on EPEL).

python2-pip is not in rhel-7-server-extras-rpms. Where is it?

EPEL

Though, at this point – since you're following up an a thread that's well over a year stale – you should probably be looking at the python3 equivalents. Many projects are deprecating their python2.x support, entirely.

Have you found a solution? The package python2-boto3 was once part of EPEL, but apparently they removed it. According to https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2019-23ae070b4c it is now part of RHEL7 (I found the same claim about the package awscli which was also once part of EPEL), but I cannot find it in any repository.

Python 2.x is all but deprecated - even though it's not yet fully, officially deprecated, many tools no longer work with it. Switch to Python 3.x (with the most recent RHEL release, installing the python3 installs Python 3.6).

With the rapidity with which the AWS utilities and the boto3 Python modules update, you're likely better off using pip to install and maintain them. As part of our userData, we ensure that the python3 RPM is installed and then use pip to install the AWS CLI from the Pypi repositories. It's just easiest for us, that way.

Hi Thomas - Thanks for the hint. I agree that pip would get me a recent installation. On the other hand we have some custom RPMs that installs software system wide that rely on boto3. I don't think this is easily solveable with a python virtual environment. And installing awscli through pip system wide once broke the requests library for others.

Hi I'm using ec2 ansible module to create a instance. Ansible engine is still required boto for ec2 module to run my playbook. Engine version is 2.9.10 running on RHEL8. I've tried as @Thomas hint and installed awscli. All the necessary packages are successfully installed. "Successfully installed awscli-1.18.90 botocore-1.17.13 colorama-0.4.3 rsa-3.4.2 s3transfer-0.3.3" But when my playbook run the boto is still required for ec2 module. "{"changed": false, "msg": "boto required for this module"}" Please advice.

For Python 3.6 on RHEL 8, building the Fedora 32 source is straightforward: https://dl.fedoraproject.org/pub/fedora/linux/releases/32/Everything/source/tree/Packages/p/python-boto3-1.11.17-1.fc32.src.rpm