We have applications/services running on Mule on-premise, now we want to migrate all of them to CloudHub, are there any specific steps/considerations/limitations that needs to be followed for the success of this migration? We want to keep the services as-is on the cloud as they are running on-premise. Any help would be really appreciated.
One of the most important parts is that each app on Cloudhub is deployed seperately. This means that each app will be 'isolated' in it's own container and needs to have at least 0.1 vCore.
So let's say you'll have 20 apps, make sure you have 2 vCores available minimum.
The advantage is here, that different apps can run on different runtimes.
This URL will point you in some directions in terms of HTTP connectivity: https://docs.mulesoft.com/runtime-manager/cloudhub-networking-guide
This part is important for port routing:
Important: On the Mule worker, the CloudHub load balancer proxies port :80 to :8081 for HTTP and proxies port :443 to :8082 for HTTPS. The http.port value must be set to port 8081 for HTTP, and the https.port value must be set to port 8082 for HTTPS. No other port numbers are supported.
Of course you need to think about a lot more, eg.: Are you using file inbound/outbound endpoints that write to a local system?
This is not possible because you won't have your file system, change to a cloud solution or SFTP/FTP.
Are you connecting to on-premise systems (probably yes)?
Figure out connectivity issues, firewall, VPC, etc.
VPC info: https://docs.mulesoft.com/runtime-manager/virtual-private-cloud