woonizzooni

kubernetes - kubectl JSONPath 사용 예제 본문

Kubernetes

kubernetes - kubectl JSONPath 사용 예제

woonizzooni 2020. 11. 5. 15:21

대충 이렇게...

 

1. 원하는 속성 값 위치(?)를 확인하고.. 

  $ kubectl get secrets -n my-ns -o json

  {

    "apiVersion": "v1",

    "items": [

        {

            "apiVersion": "v1",

            "data": {

                "ca.crt": “...",

                "namespace": "YXZvbi13cw==",

                "token": “ZXlKaGJHY2lPaUpTV..."

            },

            "kind": "Secret",

            "metadata": {...

            },

            "type": "kubernetes.io/service-account-token"

        },

        {

            "apiVersion": "v1",

            "data": {

                "myconf": “<<<<< 여기 >>>>>"

            },

            "kind": "Secret",

            "metadata": {

                "annotations": {

                    ..."

                },

                "creationTimestamp": "...

            },

            "type": "Opaque"

        }

    ],

    ....

  }

 

 

2. JSONPath로 원하는 값을 가져와본다.

  $ kubectl get secrets -n my-ns -o jsonpath='{range .items[*]}{.data.myconf}' 

  eyJkZX….

 

  $ kubectl get secrets -n my-ns -o jsonpath='{range .items[*]}{.data.myconf}' | base64 --decode

  {"desc":"example","myApp":{"redisAddr":"my-redis.redis-ns.svc.cluster.local:6379",...}

 

 

[참고]

kubernetes.io/ko/docs/reference/kubectl/cheatsheet/

https://kubernetes.io/docs/reference/kubectl/jsonpath/

 

Comments