Welcome to the Linux Foundation Forum!

6.5 - Replication Controller Specifications

Options
sportebois
sportebois Posts: 10
edited January 2017 in LFS258 Class Forum

As I tried to create the replicationController, kubectl returned an error with the following message:


The ReplicationController "redis" is invalid: spec.template.metadata.labels: Invalid value: null: `selector` does not match template `labels`

As soon as I added the `labels` definition in the template to make sure the `app: redis` label is applied ie the new pod created by the ReplicationController. Indeed, when I looked at the documentation of the Pod Template section of the Replication Controller (https://kubernetes.io/docs/user-guide/replication-controller/#pod-template), I read:  In addition to required fields for a Pod, a pod template in a ReplicationController must specify appropriate labels.

After updating my yaml definition to add this labels tempalte for new pods, I'm able to create the replicationController. 

Should this line by added to the sample in the slides, or did I missed anything which makes this extra line optional?

My new yaml is therefore: (the spec/template/metadata/labels/ node has been added)


apiVersion: v1
kind: ReplicationController
metadata:
name: redis
namespace: default
spec:
replicas: 2
selector:
app: redis
template:
metadata:
name: redis
labels: # This line is not in the 6.5 slides
app: redis # This line is not in the 6.5 slides
spec:
containers:
- image: redis:3.2
imagePullPolicy: IfNotPresent
name: redis


 

 

Comments

  • sebgoa
    sebgoa Posts: 23
    Options

     

    Hi, you are correct this is missing from the yaml displayed on the slide.

    The name of the container is also missing actually.

    We will fix that today,

    thank you

    -sebastien

     

Categories

Upcoming Training