<p>I have a microservice that needs to build a cache on a Redis server upon initialization, fetching data from a MongoDB instance outside the cluster.</p>

<p>Is it a bad practice to put the service and the Redis server in two separate containers on the same pod? Or should they be on different pods?</p>

<p>They should be on different pods (and different deployments).</p>

<p>Two reasons for this: you probably want to share a single Redis cache across multiple copies of the service (their scaling properties are different); and you can deploy a prebuilt Redis system (via Helm) without needing to tightly integrate it with your application deployment.</p>
