RKE v1.2.3 is very old, which means you are probably running k8s v1.19.4-rancher1-1. This version is way out of support, has several critical bugs, and is EOL. Kubernetes | endoflife.date So you should upgrade ASAP. I did a Master’s class on this topic which can be found at Kubernetes-Master-Class/rancher-k8s-upgrades at main · mattmattox/Kubernetes-Master-Class · GitHub.
But to answer your question, two ways of upgrading ingress-nginx come with RKE.
Option A) Upgrade your cluster with a newer version of RKE (we are currently at v1.4.5). NOTE: You should not jump directly to this version. You plan your upgrade using the process above in the master’s class.
Option B) Manually edit the deployment and bump the image. This works for minor version changes. For example, going from rancher/nginx v1.21.6 rancher1-1 to -2. The problem you are going run into is the ingress-nginx is integrated into k8s meaning as you upgrade k8s, you need to upgrade ingress-nginx. This is because there are API changes between versions, so RKE, RKE2, and k3s all ship with an ingress controller that makes the k8s version.
Again, you need to upgrade your cluster. Without looking at your cluster, it’s hard to build a complete upgrade plan, but the basic idea would be to go from 1.19 → 1.21 → 1.23 → 1.25.
You should review the migration guide and update your resources before upgrading. Deprecated API Migration Guide | Kubernetes.