Open patcurtin opened 10 months ago
@patcurtin This is more or less a catch-22. When we initially designed the deployer framework, the virtual server images on IBM Cloud were pre-installed with Python, which is a requirement for Ansible. We can try installing Python on the bastion and NFS server and then install selinux using ssh and then continue, but I would rather spend the effort on using the VPC file server capability that is now available on IBM Cloud.
Effectively:
nfs_server
resource into a ibm_is_share
Terraform resourceibm_is_share
resource from all virtual servers in the VPC, including OpenShifthttps://registry.terraform.io/providers/IBM-Cloud/ibm/latest/docs/resources/is_share
Consequently, deployer would no longer need a bastion server, except when a private cluster is deployed. Also, the NFS becomes an extendable file server with fewer restrictions.
Describe the bug A clear and concise description of what the bug is. When trying to use Deployer to create a ROKS OpenShift Cluster on IBM Cloud to use NFS, 2 servers are created, 1 Bastion Server and 1 NFS Server. During the install these Servers need Python installed and selinux disabled or the deployer fails and exits
To Reproduce Steps to reproduce the behavior:
provider:
resource_group:
ssh_keys:
security_rule:
vpc:
address_prefix:
subnet:
vsi:
nfs_server:
cos:
openshift:
Expected behavior OpenShift Cluster should be created with NFS Stroage
Screenshots
First error in the install :
SSH into bastion [root@nfs-test-bastion ~]# yum install python36 [root@nfs-test-bastion ~]# ln -s /usr/bin/python3.6 /usr/local/bin/python
Restart the deployer
Second ERROR
SSH into bastion [root@nfs-test-bastion ~]# vi /etc/selinux/config Set SELINUX=disabled [root@nfs-test-bastion ~]# reboot
Restart the deployer
Third ERROR
SSH into nfs node [root@nfs-test-nfs ~]# yum install python36 [root@nfs-test-nfs ~]# ln -s /usr/bin/python3.6 /usr/local/bin/python [root@nfs-test-nfs ~]# vi /etc/selinux/config Set SELINUX=disabled [root@nfs-test-nfs ~]# reboot
Install Completes Successfully this time
Note that Python 3.8 fails due to a python-dnf issue, so python 3.6 was used.