Kubernets creating statefulset fail

10/6/2019

I am trying to create a stateful set with definition below but I get this error:

error: unable to recognize "wordpress-database.yaml": no matches for kind "StatefulSet" in version "apps/v1beta2"

what's wrong?

The yaml file is (please do not consider the alignment of the rows):

apiVersion: apps/v1beta2
kind: StatefulSet
metadata:
name: wordpress-database
spec:
    selector:
matchLabels:
  app: blog
serviceName: "blog"
replicas: 1
template:
metadata:
  labels:
    app: blog 
spec:
  containers:
  - name: database
    image: mysql:5.7
    ports:
    - containerPort: 3306
    env:
    - name: MYSQL_ROOT_PASSWORD
      value: rootPassword
    - name: MYSQL_DATABASE
      value: database
    - name: MYSQL_USER
      value: user
    - name: MYSQL_PASSWORD
      value: password          
    volumeMounts:
    - name: data
      mountPath: /var/lib/mysql
  - name: blog
    image: wordpress:latest
    ports:
    - containerPort: 80
    env:
    - name: WORDPRESS_DB_HOST
      value: 127.0.0.1:3306
    - name: WORDPRESS_DB_NAME
      value: database
    - name: WORDPRESS_DB_USER
      value: user
    - name: WORDPRESS_DB_PASSWORD
      value: password  
  volumeClaimTemplates:
  - metadata:
  name: data
  spec:
  resources:
    requests:
      storage: 1Gi
-- Stefano Maglione
kubernetes

1 Answer

10/6/2019

The api version of StatefulSet shoud be:

apiVersion: apps/v1

From the official documentation

Good luck.

-- Shmuel
Source: StackOverflow