《Kubernetes入门指南》(学习自书籍《Kubernetes实践入门》的记录)公开篇第一部分(NodePort)
“背景”的中文翻译
我个人认为不仅要掌握基础设施知识,还希望创建和部署能运行未来应用程序的环境,以获得更多的知识。并且我想进一步更新自己的知识。
在其中遇见了这本书,希望能够留下一点点以后要做的事情,并且作为给未来的自己的一封信,希望重新审视一下。
引用や参考と今回の自分の勉強用の書籍の紹介
実際の学びについて
書籍を読みながら、章ごとに少しずつ進めていきたいと思います。
GitHub のソースコードも使いながら学んで行きたいと思います。
この章の勉強は本当に書籍の写経が主になるかもしれません・・・
勉强开始
-
- アプリケーションを外部に公開する方法を学びます
NodePort を使って公開する
外部 LoadBalancer を使って公開する
Ingress を使って公開する
这次我们打算讲解如何使用「NodePort」进行公开。
使用NodePort进行公开
-
- すべてのノードに同じポートが開放される
-
- ポートは 3000-32767 までが指定できる
- expose コマンドでも実施できる
当超出范围时,会出现以下错误,同时请确认服务也可以完成这项任务。
$ kubectl create service nodeport invalid-nodeport --tcp 8086 --node-port 32768
The Service "invalid-nodeport" is invalid: spec.ports[0].nodePort: Invalid value: 32768: provided port is not in the valid range. The range of valid ports is 30000-32767
创建备忘录
$ kubectl expose --type NodePort --port 8065 deployment mattermost --dry-run -o yaml > mattermost-service.yaml
--- a/ch3.6.1/manifests/mattermost/mattermost-service.yaml
+++ b/ch3.6.1/manifests/mattermost/mattermost-service.yaml
@@ -3,7 +3,7 @@ kind: Service
metadata:
creationTimestamp: null
labels:
- app: mattermost
+ run: mattermost # コマンドで作成すると run となる
name: mattermost
spec:
ports:
@@ -11,7 +11,7 @@ spec:
protocol: TCP
targetPort: 8065
selector:
- app: mattermost
+ run: mattermost # コマンドで作成すると run となる
type: NodePort
status:
loadBalancer: {}
这里需要进行一些修改,让它在app上实施。
应用宣言书
$ kubectl apply -f mattermost-service.yaml
service/mattermost created
确认应用宣言
$ kubectl get svc mattermost -o wide
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR
mattermost NodePort 10.108.64.60 <none> 8065:32020/TCP 2m10s app=mattermost
确认访问
我之前是通过 localhost 进行连接的,但是我想尝试通过名称进行连接,所以要确认一下名称。
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
# Added by Docker Desktop
# To allow the same kube context to work on the host and the container:
127.0.0.1 kubernetes.docker.internal
# End of section
确认动作
我們接下來要進行3.6.2節的學習。
我們一邊進行寫經一邊進行「使用外部負載平衡器進行公開」的操作。
最后
请将以下内容用中文本地方式转述,只需要一种选项:
https://github.com/kubernetes-practical-guide/examples/tree/master/ch3.6.1/manifests/mattermost
这次我在查看 GitHub 的清单时进行了尝试,但是由于自己力量不足,无法顺利运行,所以尝试使用 mattermost-preview 的容器来进行。
我希望能够自己解决这里的调试问题。
过去的帖子
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)Pod篇
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)NameSpace篇
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)Label篇
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)ReplicaSet篇
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)Deployment篇
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)Service篇
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)ConfigMap篇
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)Secret篇
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)操作篇
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)体验篇
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)体验篇第二部分
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)体验篇第三部分(Label操作)
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)体验篇第三部分(OwnerReference操作)
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)Manifest篇
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)Manifest(ConfigMap)篇
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)通信篇
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)通信篇第二部分
-
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)通信篇第三部分
- 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)通信篇第四部分