I'm trying to install FreeIPA server on a CentOS 7 node. Starting with a clean image, I am running the following code (some unrelated parts not included):
echo 'LANG=en_US.utf-8' >> /etc/environment
echo 'LC_ALL=en_US.utf-8' >> /etc/environment
yum -y install epel-release npm wget net-tools patch sbt python36u python36u-devel krb5-devel
yum -y install python36u-pip
yum install -y ipa-server
systemctl start named
systemctl enable named
ln -s /bin/pip3.6 /bin/pip
pip install --upgrade pip
pip install kdcproxy ipaplatform gssapi ipalib
ipa-server-install -p directoryManagerAdmin -a kerberosAdmin --ip-address=$ipaddress -n test.hadoop.com -r TEST.HADOOP.COM --mkhomedir -U
The ipa-server-install works properly until the part where it starts trying to use the web API. At this point, it fails due to an internal server error. Looking at the logs at /var/log/httpd/error_log, I found the following error replicated multiple times.
[Thu Jul 25 19:26:30.952879 2019] [wsgi:error] [pid 2934] mod_wsgi (pid=2934): Failed to exec Python script file '/usr/share/ipa/wsgi.py'.
[Thu Jul 25 19:26:30.952929 2019] [wsgi:error] [pid 2934] mod_wsgi (pid=2934): Exception occurred processing WSGI script '/usr/share/ipa/wsgi.py'.
[Thu Jul 25 19:26:30.953372 2019] [wsgi:error] [pid 2934] Traceback (most recent call last):
[Thu Jul 25 19:26:30.953402 2019] [wsgi:error] [pid 2934] File "/usr/share/ipa/wsgi.py", line 48, in <module>
[Thu Jul 25 19:26:30.953406 2019] [wsgi:error] [pid 2934] api.bootstrap(context='server', confdir=paths.ETC_IPA, log=None)
[Thu Jul 25 19:26:30.953414 2019] [wsgi:error] [pid 2934] File "/lib/python3.6/site-packages/ipalib/plugable.py", line 494, in bootstrap
[Thu Jul 25 19:26:30.953417 2019] [wsgi:error] [pid 2934] raise errors.SystemEncodingError(encoding=fse)
[Thu Jul 25 19:26:30.953432 2019] [wsgi:error] [pid 2934] ipalib.errors.SystemEncodingError: System encoding must be UTF-8, 'ascii' is not supported. Set LC_ALL="C.UTF-8", or LC_ALL="" and LC_CTYPE="C.UTF-8".
I've tried setting LC_ALL and LANG (as seen in the script), but it still comes up. What do I need to do to fix this so that the web API for the server will work properly?
EDIT: Per suggestions from @abbra @michael-hampton, I reverted my fixes for the Python issues. See below for the new set of commands I am running, plus one of the errors I am seeing in httpd/error_log. Note that I am seeing other packages missing as well, but they are all similar.
yum -y install epel-release npm wget net-tools patch sbt krb5-devel
yum install -y ipa-server
systemctl start named
systemctl enable named
Output in /var/log/httpd/error_log:
[Fri Jul 26 14:20:03.334411 2019] [wsgi:error] [pid 2894] mod_wsgi (pid=2894): Failed to exec Python script file '/usr/share/ipa/wsgi.py'.
[Fri Jul 26 14:20:03.334456 2019] [wsgi:error] [pid 2894] mod_wsgi (pid=2894): Exception occurred processing WSGI script '/usr/share/ipa/wsgi.py'.
[Fri Jul 26 14:20:03.334675 2019] [wsgi:error] [pid 2894] Traceback (most recent call last):
[Fri Jul 26 14:20:03.334697 2019] [wsgi:error] [pid 2894] File "/usr/share/ipa/wsgi.py", line 43, in <module>
[Fri Jul 26 14:20:03.334701 2019] [wsgi:error] [pid 2894] from ipaplatform.paths import paths
[Fri Jul 26 14:20:03.334716 2019] [wsgi:error] [pid 2894] ModuleNotFoundError: No module named 'ipaplatform'