| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

差分

ナビゲーションに移動 検索に移動
171 バイト除去 、 2021年5月20日 (木) 13:59
| [[Docker]] | [[Docker コマンド]] | [[Docker ネットワーク]] | [[WSL]] | [[MicroK8s]] | [[Multipass]] |
==[https://kubernetes.io/ja/ Kubernetes]==
{{amazon|4873118409}}
*kubectlは、マニフェストファイルの情報を元にKubernetes MasterのAPIにリクエストを送り、Kubernetesの操作を行う
*Kubernetes の API は一般的な RESTful API として実装されている
 
==構成==
===クラスタ===
*Kubernetesクラスターは以下の2種類のリソースで構成
**マスターがクラスターを管理する、マスターはクラスターの管理を担当
**ノードがアプリケーションを動かすワーカーとなる、ノードは、Kubernetesクラスターのワーカーマシンとして機能するVMまたは物理マシン
====Kubelet====
*各ノードにはKubeletがあり、これはノードを管理し、Kubernetesマスターと通信するためのエージェント
 
====デプロイ====
Kubernetesにアプリケーションをデプロイするときは、
#マスターにアプリケーションコンテナを起動するように指示
#マスターはコンテナがクラスターのノードで実行されるようにスケジュール
#ノードは、マスターが公開しているKubernetes APIを使用してマスターと通信
##エンドユーザーは、Kubernetes APIを直接使用して対話することもできます
 
 
 
 
====Kubernetes とリソース====
*Kubernetesでは、リソースを登録することで、コンテナの実行やロードバランサの作成が非同期に行われる
 
==Workloadsリソース==
*クラスタ上にコンテナを起動するために利用する
==[[MicroK8s]]==
*[[MicroK8s]]
==Kubectl==[https://kubernetes.io/ja/docs/reference/kubectl/cheatsheet/ チートシート]*公式なクライアントは、kubectl*kubectlを使用してクラスターと対話できるようになります*[[KubernetesKubectl]] APIと連携するコマンドラインツール*minikube から利用する場合 > minikube kubectl version ===チートシート===*kubectlチートシート(公式) https://kubernetes.io/ja/docs/reference/kubectl/cheatsheet/*kubectlチートシート(PDF コミュニティ版) https://github.com/dennyzhang/cheatsheet-kubernetes-A4 ===kubectlコマンド===*Kubernetesでは、クラスタの操作は全て、Kubernetes Masterの APIを介して行われる*手動で操作する場合には、CLIツールの kubectl を利用するのが一般的 *[[Kubectl が Kubernetes Master と通信するには、接続先サーバー情報や認証情報が必要となる*デフォルトでは、~/.kube/config に書かれている情報を使用して接続を行う {| class="wikitable"|-! scope="col"| コマンド! scope="col"| 内容|-! scope="row"|kubectl version| クライアントkubectlおよびAPIサーバーのバージョンを表示|-! scope="row"|kubectl get nodes| ワーカーノード情報を表示|-! scope="row"|kubectl describe nodes [ノード名]| ノードの詳細情報|-! scope="row"|kubectl | |-! scope="row"|kubectl | |-! scope="row"|kubectl | |-! scope="row"|kubectl | |-! scope="row"|kubectl | |-! scope="row"|kubectl | |-! scope="row"|kubectl | |-! scope="row"|kubectl | |-|}]
===kubectlインストール=[https://kubernetes.io/ja/docs/concepts/overview/working-with-objects/namespaces/ Namespace]==*Kubernetesは、同一の物理クラスター上で複数の仮想クラスターの動作をサポートします。 この仮想クラスターをNamespaceと呼びます*作成:kubectl create namespace <名称>*削除:kubectl delete namespace <名称>
<pre>
$ curl kubectl create namespace samplenamespace/sample created$ kubectl get namespacesNAME STATUS AGEkube-LO https://storage.googleapis.com/kubernetessystem Active 66dkube-release/release/$(curl public Active 66dkube-s https://storage.googleapis.com/kubernetesnode-release/release/stable.txt)/bin/linux/amd64/kubectllease Active 66d$ sudo chmod +x ./kubectldefault Active 66d$ sudo install kubectl /usr/local/binsample Active 4s
</pre>

案内メニュー