Kubernetes create Service in deployment+rbd mode, also same configured to succeed in default namespace, fail under non default namespace?

9/12/2017

Kubernetes create Service in deployment+rbd mode, also same configured to succeed in default namespace, fail under non default namespace?

The config(json):

{    
    "kind": "Deployment",
    "spec": {
        "replicas": "1",
        "template": {
            "spec": {
                "volumes": [
                    {
                        "rbd": {
                            "secretRef": {
                                "name": "ceph-secret"
                            },
                            "image": "zhaosiyi.24",
                            "fsType": "ext4",
                            "readOnly": false,
                            "user": "admin",
                            "monitors": [
                                "xxx.xxx.xxx.6:6789",
                                "xxx.xxx.xxx.7:6789",
                                "xxx.xxx.xxx.8:6789"
                            ],
                            "pool": "rrkd.rbd"
                        },
                        "name": "aa"
                    }
                ],
                "imagePullSecrets": [
                    {
                        "name": "registrykey-m3-1"
                    }
                ],
                "containers": [
                    {
                        "image": "ccr.ccs.tencentyun.com/rrkd/rrkd-nginx:1.0",
                        "volumeMounts": [
                            {
                                "readOnly": false,
                                "mountPath": "/mnt",
                                "name": "aa"
                            }
                        ],
                        "name": "aa",
                        "ports": [
                            {
                                "protocol": "TCP",
                                "containerPort": 80
                            }
                        ]
                    }
                ]
            },
            "metadata": {
                "labels": {
                    "name": "aa"
                }
            }
        },
        "selector": {
            "matchLabels": {
                "name": "aa"
            }
        }
    },
    "apiVersion": "extensions/v1beta1",
    "metadata": {
        "labels": {
            "name": "aa"
        },
        "name": "aa"
    }
}
{
    "kind": "Service",
    "spec": {
        "type": "NodePort",
        "ports": [
            {
                "targetPort": 80,
                "protocol": "TCP",
                "port": 80
            }
        ],
        "selector": {
            "name": "aa"
        }
    },
    "apiVersion": "v1",
    "metadata": {
        "labels": {
            "name": "aa"
        },
        "name": "aa"
    }
}

The strangest thing is that the details of the describe pod show success, without any error information, but the get pod is not actually successful, as below:
enter image description here

enter image description here

-- CcccFz
containers
docker
kubectl
kubernetes

2 Answers

9/23/2017

The problem has been solved. Non default of namespace is unsuccessful because the new namespace is not have Secret, so the authentication failed at pull image. Need to manually create the Secret for pull image. If it is RBD or PVC mode, you also need to manually create the Secret for mounting storage.

-- CcccFz
Source: StackOverflow

9/25/2017

Can you show more detail for the describe of pod? I think it will show the failed log it always you don't have secret or the secret not setting well, and the ceph maybe wrong too

-- sam
Source: StackOverflow