As described on that page, the difference between dev and production mode is that in dev mode we warn about important system, JVM and Elasticsearch settings that are not configured correctly for production usage, while in production mode we will error on these checks when the node starts and refuse to start the node.
The distinction between whether a node is consider to be in dev or production mode is down to whether the transport host is bound to localhost. If network.host (or transport.host) is set to a localhost address we consider the node to be in development mode. If its set to a non-localhost address we consider the node to be in production mode.
As I said above, you just need to ensure that in you elasticsearch.yml file on each of your nodes the transport.host or network.host is set to a non-localhost address. You can also look a the transport_address in the Nodes Info API