@@ -11,180 +11,170 @@ min-kubernetes-server-version: v1.10
1111실행중인 MongoDB 서버에 연결하는 방법을 보여준다. 이 유형의 연결은 데이터베이스
1212디버깅에 유용할 수 있다.
1313
14-
15-
16-
1714## {{% heading "prerequisites" %}}
1815
19-
2016* {{< include "task-tutorial-prereqs.md" >}} {{< version-check >}}
2117
2218* [ MongoDB Shell] ( https://www.mongodb.com/try/download/shell ) 을 설치한다.
2319
24-
25-
26-
2720<!-- steps -->
2821
2922## MongoDB 디플로이먼트와 서비스 생성하기
3023
31241 . MongoDB를 실행하기 위해 디플로이먼트를 생성한다.
3225
33- ``` shell
34- kubectl apply -f https://k8s.io/examples/application/mongodb/mongo-deployment.yaml
35- ```
36-
37- 성공적인 명령어의 출력은 디플로이먼트가 생성됐다는 것을 확인해준다.
26+ ``` shell
27+ kubectl apply -f https://k8s.io/examples/application/mongodb/mongo-deployment.yaml
28+ ```
3829
39- ```
40- deployment.apps/mongo created
41- ```
30+ 성공적인 명령어의 출력은 디플로이먼트가 생성됐다는 것을 확인해준다.
4231
43- 파드 상태를 조회하여 파드가 준비되었는지 확인한다.
32+ ```
33+ deployment.apps/mongo created
34+ ```
4435
45- ` ` ` shell
46- kubectl get pods
47- ` ` `
36+ 파드 상태를 조회하여 파드가 준비되었는지 확인한다.
4837
49- 출력은 파드가 생성되었다는 것을 보여준다.
38+ ``` shell
39+ kubectl get pods
40+ ```
5041
51- ```
52- NAME READY STATUS RESTARTS AGE
53- mongo-75f59d57f4-4nd6q 1/1 Running 0 2m4s
54- ```
42+ 출력은 파드가 생성되었다는 것을 보여준다.
5543
56- 디플로이먼트 상태를 조회한다.
44+ ```
45+ NAME READY STATUS RESTARTS AGE
46+ mongo-75f59d57f4-4nd6q 1/1 Running 0 2m4s
47+ ```
5748
58- ` ` ` shell
59- kubectl get deployment
60- ` ` `
49+ 디플로이먼트 상태를 조회한다.
6150
62- 출력은 디플로이먼트가 생성되었다는 것을 보여준다.
51+ ``` shell
52+ kubectl get deployment
53+ ```
6354
64- ```
65- NAME READY UP-TO-DATE AVAILABLE AGE
66- mongo 1/1 1 1 2m21s
67- ```
55+ 출력은 디플로이먼트가 생성되었다는 것을 보여준다.
6856
69- 디플로이먼트는 자동으로 레플리카셋을 관리한다.
70- 아래의 명령어를 사용하여 레플리카셋 상태를 조회한다.
57+ ```
58+ NAME READY UP-TO-DATE AVAILABLE AGE
59+ mongo 1/1 1 1 2m21s
60+ ```
7161
72- ` ` ` shell
73- kubectl get replicaset
74- ` ` `
62+ 디플로이먼트는 자동으로 레플리카셋을 관리한다.
63+ 아래의 명령어를 사용하여 레플리카셋 상태를 조회한다.
7564
76- 출력은 레플리카셋이 생성되었다는 것을 보여준다.
65+ ``` shell
66+ kubectl get replicaset
67+ ```
7768
78- ```
79- NAME DESIRED CURRENT READY AGE
80- mongo-75f59d57f4 1 1 1 3m12s
81- ```
69+ 출력은 레플리카셋이 생성되었다는 것을 보여준다.
8270
71+ ```
72+ NAME DESIRED CURRENT READY AGE
73+ mongo-75f59d57f4 1 1 1 3m12s
74+ ```
8375
84762 . MongoDB를 네트워크에 노출시키기 위해 서비스를 생성한다.
8577
86- ` ` ` shell
87- kubectl apply -f https://k8s.io/examples/application/mongodb/mongo-service.yaml
88- ` ` `
78+ ``` shell
79+ kubectl apply -f https://k8s.io/examples/application/mongodb/mongo-service.yaml
80+ ```
8981
90- 성공적인 커맨드의 출력은 서비스가 생성되었다는 것을 확인해준다.
82+ 성공적인 커맨드의 출력은 서비스가 생성되었다는 것을 확인해준다.
9183
92- ```
93- service/mongo created
94- ```
84+ ```
85+ service/mongo created
86+ ```
9587
96- 서비스가 생성되었는지 확인한다.
88+ 서비스가 생성되었는지 확인한다.
9789
98- ` ` ` shell
90+ ``` shell
9991 kubectl get service mongo
100- ` ` `
92+ ```
10193
102- 출력은 서비스가 생성되었다는 것을 보여준다.
94+ 출력은 서비스가 생성되었다는 것을 보여준다.
10395
104- ```
105- NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
106- mongo ClusterIP 10.96.41.183 < none> 27017/TCP 11s
107- ```
96+ ```
97+ NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
98+ mongo ClusterIP 10.96.41.183 <none> 27017/TCP 11s
99+ ```
108100
1091013 . MongoDB 서버가 파드 안에서 실행되고 있고, 27017번 포트에서 수신하고 있는지 확인한다.
110102
111- ` ` ` shell
112- # mongo-75f59d57f4-4nd6q 를 당신의 파드 이름으로 대체한다.
113- kubectl get pod mongo-75f59d57f4-4nd6q --template=' {{(index (index .spec.containers 0).ports 0).containerPort}}{{"\n"}}'
114- ` ` `
103+ ``` shell
104+ # mongo-75f59d57f4-4nd6q 를 당신의 파드 이름으로 대체한다.
105+ kubectl get pod mongo-75f59d57f4-4nd6q --template=' {{(index (index .spec.containers 0).ports 0).containerPort}}{{"\n"}}'
106+ ```
115107
116- 출력은 파드 내 MongoDB 포트 번호를 보여준다.
108+ 출력은 파드 내 MongoDB 포트 번호를 보여준다.
117109
118- ```
119- 27017
120- ```
110+ ```
111+ 27017
112+ ```
121113
122- (이는 인터넷 상의 MongoDB에 할당된 TCP 포트이다.)
114+ (27017은 인터넷 상의 MongoDB에 할당된 TCP 포트이다.)
123115
124116## 파드의 포트를 로컬 포트로 포워딩하기
125117
126- 1. ` kubectl port-forward` 명령어는 파드 이름과 같이 리소스 이름을 사용하여 일치하는 파드를 선택해 포트 포워딩하는 것을 허용한다.
118+ 1 . ` kubectl port-forward ` 명령어는 파드 이름과 같이 리소스 이름을 사용하여 일치하는 파드를 선택해 포트 포워딩하는 것을 허용한다.
127119
128120
129- ` ` ` shell
130- # mongo-75f59d57f4-4nd6q 를 당신의 파드 이름으로 대체한다.
131- kubectl port-forward mongo-75f59d57f4-4nd6q 28015:27017
132- ` ` `
121+ ``` shell
122+ # mongo-75f59d57f4-4nd6q 를 당신의 파드 이름으로 대체한다.
123+ kubectl port-forward mongo-75f59d57f4-4nd6q 28015:27017
124+ ```
133125
134- 이것은
126+ 이것은
135127
136- ` ` ` shell
137- kubectl port-forward pods/mongo-75f59d57f4-4nd6q 28015:27017
138- ` ` `
128+ ``` shell
129+ kubectl port-forward pods/mongo-75f59d57f4-4nd6q 28015:27017
130+ ```
139131
140- 또는
132+ 또는
141133
142- ` ` ` shell
143- kubectl port-forward deployment/mongo 28015:27017
144- ` ` `
134+ ``` shell
135+ kubectl port-forward deployment/mongo 28015:27017
136+ ```
145137
146- 또는
138+ 또는
147139
148- ` ` ` shell
149- kubectl port-forward replicaset/mongo-75f59d57f4 28015:27017
150- ` ` `
140+ ``` shell
141+ kubectl port-forward replicaset/mongo-75f59d57f4 28015:27017
142+ ```
151143
152- 또는 다음과 같다.
144+ 또는 다음과 같다.
153145
154- ` ` ` shell
155- kubectl port-forward service/mongo 28015:27017
146+ ``` shell
147+ kubectl port-forward service/mongo 28015:27017
156148 ```
157149
158- 위의 명령어들은 모두 동일하게 동작한다. 이와 유사하게 출력된다.
150+ 위의 명령어들은 모두 동일하게 동작한다. 이와 유사하게 출력된다.
159151
160- ```
161- Forwarding from 127.0.0.1:28015 -> 27017
162- Forwarding from [::1]:28015 -> 27017
163- ```
152+ ```
153+ Forwarding from 127.0.0.1:28015 -> 27017
154+ Forwarding from [ ::1] :28015 -> 27017
155+ ```
164156
165157{{< note >}}
166-
167158`kubectl port-forward` 는 프롬프트를 리턴하지 않으므로, 이 연습을 계속하려면 다른 터미널을 열어야 한다.
168-
169159{{< /note >}}
170160
171- 2. MongoDB 커맨드라인 인터페이스를 실행한다.
161+ 2. MongoDB 커맨드라인 인터페이스를 실행한다.
172162
173- ` ` ` shell
174- mongosh --port 28015
175- ` ` `
163+ ```shell
164+ mongosh --port 28015
165+ ```
176166
177- 3. MongoDB 커맨드라인 프롬프트에 ` ping` 명령을 입력한다.
167+ 3 . MongoDB 커맨드라인 프롬프트에 ` ping ` 명령을 입력한다.
178168
179- ```
180- db.runCommand( { ping: 1 } )
181- ` ` `
169+ ```
170+ db.runCommand( { ping: 1 } )
171+ ```
182172
183- 성공적인 핑 요청을 반환한다.
173+ 성공적인 핑 요청을 반환한다.
184174
185- ` ` `
186- { ok: 1 }
187- ` ` `
175+ ```
176+ { ok: 1 }
177+ ```
188178
189179### 선택적으로 _ kubectl_ 이 로컬 포트를 선택하게 하기 {#let-kubectl-choose-local-port}
190180
@@ -204,7 +194,6 @@ Forwarding from 127.0.0.1:63753 -> 27017
204194Forwarding from [::1]:63753 -> 27017
205195```
206196
207-
208197<!-- discussion -->
209198
210199## 토의
@@ -219,9 +208,7 @@ UDP 프로토콜에 대한 지원은
219208[ 이슈 47862] ( https://github.com/kubernetes/kubernetes/issues/47862 ) 에서 추적되고 있다.
220209{{< /note >}}
221210
222-
223-
224-
225211## {{% heading "whatsnext" %}}
226212
227213[ kubectl port-forward] ( /docs/reference/generated/kubectl/kubectl-commands/#port-forward ) 에 대해 더 알아본다.
214+
0 commit comments