《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

确认动作

スクリーンショット 2020-04-25 16.54.03.png

我們接下來要進行3.6.2節的學習。

我們一邊進行寫經一邊進行「使用外部負載平衡器進行公開」的操作。

最后

请将以下内容用中文本地方式转述,只需要一种选项:
https://github.com/kubernetes-practical-guide/examples/tree/master/ch3.6.1/manifests/mattermost

这次我在查看 GitHub 的清单时进行了尝试,但是由于自己力量不足,无法顺利运行,所以尝试使用 mattermost-preview 的容器来进行。

我希望能够自己解决这里的调试问题。

过去的帖子

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)Pod篇

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)NameSpace篇

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)Label篇

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)ReplicaSet篇

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)Deployment篇

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)Service篇

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)ConfigMap篇

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)Secret篇

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)操作篇

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)体验篇

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)体验篇第二部分

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)体验篇第三部分(Label操作)

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)体验篇第三部分(OwnerReference操作)

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)Manifest篇

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)Manifest(ConfigMap)篇

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)通信篇

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)通信篇第二部分

 

    1. 初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)通信篇第三部分

 

    初学者的Kubernetes入门(来源于书籍《Kubernetes 实践入门》的实战经验)通信篇第四部分
广告
将在 10 秒后关闭
bannerAds