Replication controller & replication sets

I am unable to understand difference between ReplicationController & ReplicaSets.
I created a POD with below definition
apiVersion: v1
kind: Pod
metadata:
name: firstpod
labels:
tier: level
spec:
containers:
- name: nginx
image: nginx

Now, first I created RC using above metadata with replicas: 3, only new 2 PODs were created. Also, when I created RS with replicas: 3, then only 2 PODs were created.

So both are ensuring 3 PODs are running. So what is the difference between these RS & RC?

Hello @rocker

In k8s, every pod run a single instance of a given app. if you want to scale it (run multiple instances) you have to use multiple pods “replication” this is created and managed by an abstraction called “controller”
But you need to verify that the selector label matches the label defined in your pod.