初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)操作編
背景
個人的にインフラの知識以上にこれからのアプリケーションが動く環境を作ってデプロイしたりしてこれからの知識を身に着けたい。そしてより一層、自分の知識のアップデートをしたいと思いました。
その中でこの本に出会い、これから少しずつやったことを残し、未来の自分への手紙としてもあり、見つめ直せればと思いました。
引用や参考と今回の自分の勉強用の書籍の紹介
技術評論社『Kubernetes実践入門』のサンプルコード
Kubernetes実践入門 プロダクションレディなコンテナ&アプリケーションの作り方
実際の学びについて
書籍を読みながら、章ごとに少しずつ進めていきたいと思います。
GitHub のソースコードも使いながら学んで行きたいと思います。
この章の勉強は本当に書籍の写経が主になるかもしれません・・・
勉強開始
Kubectl create deployment でアプリケーションをデプロイする
$ kubectl create deployment mattermost-preview --image k8spracticalguide/mattermost-preview:4.10.2
deployment.apps/mattermost-preview created
実行確認
$ kubectl get deployment mattermost-preview
NAME READY UP-TO-DATE AVAILABLE AGE
mattermost-preview 0/1 1 0 49s
$ kubectl describe deployment mattermost-preview
Name: mattermost-preview
Namespace: default
CreationTimestamp: Mon, 13 Apr 2020 20:59:52 +0900
Labels: app=mattermost-preview
Annotations: deployment.kubernetes.io/revision: 1
Selector: app=mattermost-preview
Replicas: 1 desired | 1 updated | 1 total | 1 available | 0 unavailable
StrategyType: RollingUpdate
MinReadySeconds: 0
RollingUpdateStrategy: 25% max unavailable, 25% max surge
Pod Template:
Labels: app=mattermost-preview
Containers:
mattermost-preview:
Image: k8spracticalguide/mattermost-preview:4.10.2
Port: <none>
Host Port: <none>
Environment: <none>
Mounts: <none>
Volumes: <none>
Conditions:
Type Status Reason
---- ------ ------
Available True MinimumReplicasAvailable
Progressing True NewReplicaSetAvailable
OldReplicaSets: <none>
NewReplicaSet: mattermost-preview-78bc8686ff (1/1 replicas created)
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal ScalingReplicaSet 64s deployment-controller Scaled up replica set mattermost-preview-78bc8686ff to 1
kubectl expose アプリケーションを公開する
$ kubectl expose --type NodePort --port 8065 deployment mattermost-preview
service/mattermost-preview exposed
実行確認
$ kubectl get service
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 31d
mattermost-preview NodePort 10.103.143.104 <none> 8065:30355/TCP 8m44s
my-svc ClusterIP 10.101.221.192 <none> 8080/TCP 47h
ブラウザアクセス確認
$ kubectl create deployment mattermost-preview --image k8spracticalguide/mattermost-preview:4.10.2
deployment.apps/mattermost-preview created
$ kubectl get deployment mattermost-preview
NAME READY UP-TO-DATE AVAILABLE AGE
mattermost-preview 0/1 1 0 49s
$ kubectl describe deployment mattermost-preview
Name: mattermost-preview
Namespace: default
CreationTimestamp: Mon, 13 Apr 2020 20:59:52 +0900
Labels: app=mattermost-preview
Annotations: deployment.kubernetes.io/revision: 1
Selector: app=mattermost-preview
Replicas: 1 desired | 1 updated | 1 total | 1 available | 0 unavailable
StrategyType: RollingUpdate
MinReadySeconds: 0
RollingUpdateStrategy: 25% max unavailable, 25% max surge
Pod Template:
Labels: app=mattermost-preview
Containers:
mattermost-preview:
Image: k8spracticalguide/mattermost-preview:4.10.2
Port: <none>
Host Port: <none>
Environment: <none>
Mounts: <none>
Volumes: <none>
Conditions:
Type Status Reason
---- ------ ------
Available True MinimumReplicasAvailable
Progressing True NewReplicaSetAvailable
OldReplicaSets: <none>
NewReplicaSet: mattermost-preview-78bc8686ff (1/1 replicas created)
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal ScalingReplicaSet 64s deployment-controller Scaled up replica set mattermost-preview-78bc8686ff to 1
$ kubectl expose --type NodePort --port 8065 deployment mattermost-preview
service/mattermost-preview exposed
$ kubectl get service
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 31d
mattermost-preview NodePort 10.103.143.104 <none> 8065:30355/TCP 8m44s
my-svc ClusterIP 10.101.221.192 <none> 8080/TCP 47h
次は 3.2 章をやっていきます。
Kubernetes の API で操作を体験する形で勉強していきます
最後に
今回は、コマンドで Deploy してアプリケーションにアクセスできるところまで確認しました。
ちょっとハマったところ
URLアクセスするアドレスがわからず、Google 検索する羽目に・・・
URLアクセスは自分で試している場合は、localhost
で覚えてよいのだろうか????
Author And Source
この問題について(初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)操作編), 我々は、より多くの情報をここで見つけました https://qiita.com/nodokaodayaka/items/09cb848164e4a1855c83著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .