Hi all,

Due to the extensive number of files involved in the Python 3 upgrade, 
conducting an online review has been relatively challenging. Therefore, I 
collaborated with the colleague who provided this PR offline, conducting 
extensive review, testing, and bug-fixing work. Now, the Ambari trunk Python 3 
upgrade has been successfully completed. We have passed all unit tests, and 
there have been no issues detected during manual deployments and blueprint 
automation deployments.

The code changes made during the upgrade process have been organized into 
documentation, with reasons for the changes clearly stated to facilitate review 
by everyone. Additionally, the issue provides valuable information on how to 
compile and test this Python 3 Ambari based on CentOS 7.

https://issues.apache.org/jira/browse/AMBARI-26000 
<https://issues.apache.org/jira/browse/AMBARI-26000>

The following repository provides packages for installing all dependencies for 
a cluster. Feel free to download and test it, and please report any issues you 
encounter.
(This repository contains Ambari based on trunk with the Python 3 upgrade PR 
merged, and other big data component packages are from Apache Bigtop 3.2.)

http://64.69.37.12:8089

Please note that the bandwidth and traffic for the repository I provided are 
limited. It's best to download it to your local machine and create your own 
repository for testing, which will significantly speed up the cluster 
installation process. Here are the steps to create a repository after 
downloading:

```bash
yum install -y createrepo
yum install -y yum-plugin-priorities

# Create the yum directory
mkdir -p /data1/custom_yum/packages

# Put all the RPMs you need to install in the /data1/custom_yum/packages 
directory, then execute
# Specify the 'basedir' as the location to store RPMs, it must be explicitly 
specified to avoid errors, it will default to the command execution directory
createrepo /data1/custom_yum --basedir=/data1/custom_yum/packages

# If you add or modify RPMs, you can update the repository with the following 
command
createrepo --update -p /data1/custom_yum
```

Next, expose the repo using an HTTP proxy server. You can use Python's built-in 
server, which allows downloading one file at a time (slower):

```bash
python -m SimpleHTTPServer 8089
```

Or you can use the Node.js file server, which is faster:

```bash
npm install --global http-server

cd /data1/custom_yum
http-server -p 8089
```

To use the repository, create a repo configuration file:

```bash
vi /etc/yum.repos.d/ambari_custom.repo
```

Add the following content, replacing `your_ip` with the actual IP address:

```
[c7-media]
name=CentOS-$releasever - Media
baseurl=http://your_ip:8089
gpgcheck=0
enabled=1
priority=2
```

Then, clean the cache and run the following command for testing:

```bash
yum clean all
yum makecache
yum install hadoop_3_2_0
```

Happy testing!

Reply via email to