Kubernetes: kubectl ํŒจ์น˜๊ฐ€ Error from server : json : cannot unmarshal string into Go value

์— ๋งŒ๋“  2017๋…„ 12์›” 09์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: kubernetes/kubernetes

๋ฒ„๊ทธ ๋ณด๊ณ ์„œ ๋˜๋Š” ๊ธฐ๋Šฅ ์š”์ฒญ์ž…๋‹ˆ๊นŒ? :

/ ์ข…๋ฅ˜์˜ ๋ฒ„๊ทธ

๋ฌด์Šจ ์ผ์ด ์ผ์–ด ๋‚ฌ์Šต๋‹ˆ๊นŒ?

kubectl --namespace = dev patch serviceaccount default -p '{ "imagePullSecrets": [{ "name": "gcr-json-key"}]}'

์‹คํŒจ

์„œ๋ฒ„ ์˜ค๋ฅ˜ : json : ๋ฌธ์ž์—ด์„ map [string] interface {} ์œ ํ˜•์˜ Go ๊ฐ’์œผ๋กœ ๋งˆ์ƒฌ๋ง ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์˜ˆ์ƒ ํ•œ ์ผ :

์„œ๋น„์Šค ๊ณ„์ •์ด ์—…๋ฐ์ดํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์žฌํ˜„ ๋ฐฉ๋ฒ• (๊ฐ€๋Šฅํ•œ ํ•œ ์ตœ์†Œํ•œ์œผ๋กœ ์ •ํ™•ํ•˜๊ฒŒ) :

  1. minikube ์„ค์น˜
  2. choco install kubernetes-cli-๋ฒ„์ „ 1.8.5
  3. kubectl create namespace dev
  4. kubectl --namespace = dev ๋น„๋ฐ€ docker-registry ์ƒ์„ฑ gcr-json-key --docker-server = https://eu.gcr.io --docker-username = _json_key --docker-password = "--- PASSWORD- - " [email protected]
  5. kubectl --namespace = dev patch serviceaccount default -p '{ "imagePullSecrets": [{ "name": "gcr-json-key"}]}'

ํ™˜๊ฒฝ :

  • Kubernetes ๋ฒ„์ „ ( kubectl version ) :

ํด๋ผ์ด์–ธํŠธ ๋ฒ„์ „ : version.Info {Major : "1", Minor : "8", GitVersion : "v1.8.1", GitCommit : "f38e43b221d08850172a9a4ea785a86a3ffa3b3a", GitTreeState : "clean", BuildDate : "2017-10-11T23 : 27 : 35Z ", GoVersion :"go1.8.3 ", ์ปดํŒŒ์ผ๋Ÿฌ :"gc ", ํ”Œ๋žซํผ :"windows / amd64 "}
์„œ๋ฒ„ ๋ฒ„์ „ : version.Info {Major : "1", Minor : "8", GitVersion : "v1.8.0", GitCommit : "0b9efaeb34a2fc51ff8e4d34ad9bc6375459c4a4", GitTreeState : "clean", BuildDate : "2017-11-29T22 : 43 : 34Z ", GoVersion :"go1.9.1 ", ์ปดํŒŒ์ผ๋Ÿฌ :"gc ", ํ”Œ๋žซํผ :"linux / amd64 "}

  • ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž ๋˜๋Š” ํ•˜๋“œ์›จ์–ด ๊ตฌ์„ฑ :
    Minikube

  • OS (์˜ˆ : / etc / os-release) :
    Windows ๋ฐ minikube

kinbug sicli siwindows

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

--v = 8์„ ์ถ”๊ฐ€ํ–ˆ์„ ๋•Œ ๋ฌธ์ œ๋ฅผ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.

JSON์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ์ง€์ •ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

kubectl --namespace = dev patch serviceaccount default -p "{\"imagePullSecrets \ ": [{"name \ ": \"gcr-json-key \ "}]}"

๋ชจ๋“  3 ๋Œ“๊ธ€

--v = 8์„ ์ถ”๊ฐ€ํ–ˆ์„ ๋•Œ ๋ฌธ์ œ๋ฅผ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.

JSON์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ์ง€์ •ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

kubectl --namespace = dev patch serviceaccount default -p "{\"imagePullSecrets \ ": [{"name \ ": \"gcr-json-key \ "}]}"

๋˜ํ•œ --v = 8์—์„œ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.

์•„๋ž˜๋Š” ๋‚˜๋ฅผ ์œ„ํ•ด ์ผํ–ˆ์Šต๋‹ˆ๋‹ค (-p ๋ช…๋ น์— ๋Œ€ํ•œ qoutes ์—†์Œ)

kubectl patch horizontalpodautoscalers.autoscaling qa-master-instance -p { "spec": { "maxReplicas": 4}}

๋‚˜๋Š” ์ด๊ฒƒ์„ ์‹คํ–‰ํ–ˆ๋‹ค
kubectl ํŒจ์น˜ configmap / aws-auth -n kube-system --patch /aws-auth-patch.yml
ํ•˜์ง€๋งŒ ๊ฐ™์€ ์˜ค๋ฅ˜๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰