During the preparation of my “Learning OpenShift” course for LinkedIn Learning, I used OpenShift Local (formerly known as “CodeReady Containers” or CRC) to demonstrate the various features of the platform from a developer’s point of view.
The issue with my setup was that, given the resource requirements of CRC, it made my laptop fan run wild, which was a problem since I needed to record my voice as I used the product. To solve this issue, I installed OpenShift Local CRC in a computer in another room connected to my home LAN, and I configured my laptop to access it as if it were running locally using HAProxy.
This blog post took me to this gist, but the instructions there didn’t work on Fedora 38. However, in the comments below the gist there’s a reference to this other blog post that actually worked. The final procedure I followed is reproduced here:
On the Server
- Install HAProxy:
$ sudo dnf install -y haproxy $ sudo systemctl enable haproxy $ sudo systemctl start haproxy
- Configure HAProxy:
$ export CRC_IP=$(crc ip) $ sudo tee /etc/haproxy/haproxy.cfg &>/dev/null <<EOF global log /dev/log local0 defaults balance roundrobin log global maxconn 100 mode tcp timeout connect 5s timeout client 500s timeout server 500s listen app bind 0.0.0.0:80 server crcvm $CRC_IP:80 check listen apps_ssl bind 0.0.0.0:443 server crcvm $CRC_IP:443 check listen api bind 0.0.0.0:6443 server crcvm $CRC_IP:6443 check EOF
- Restart HAProxy:
$ sudo systemctl restart haproxy
- Get the IPv4 of the server:
$ ip address show
On the Client
- Add the entry below to the
xx.xx.xx.xxis the IPv4 of the server you got previously:
xx.xx.xx.xx api.crc.testing console-openshift-console.apps-crc.testing default-route-openshift-image-registry.apps-crc.testing oauth-openshift.apps-crc.testing
- Open the console on your client machine with the usual URL, and enjoy a quiet recording environment, while the fan of your server is buzzing in a separate room.