# Windowsノードのアップグレード

LLMS index: [llms.txt](/llms.txt)

---

<!-- overview -->








  <div class="feature-state-notice feature-beta">
      <span class="feature-state-name">FEATURE STATE:</span>
      <code>Kubernetes v1.18 [beta]</code>
    </div>
  



このページでは、[kubeadmで作られた](/ja/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes)Windowsノードをアップグレードする方法について説明します。




## 始める前に
 
<p>Kubernetesクラスターが必要、かつそのクラスターと通信するためにkubectlコマンドラインツールが設定されている必要があります。
このチュートリアルは、コントロールプレーンのホストとして動作していない少なくとも2つのノードを持つクラスターで実行することをおすすめします。
まだクラスターがない場合、<a href="https://minikube.sigs.k8s.io/docs/tutorials/multi_node/">minikube</a>を使って作成するか、
以下のいずれかのKubernetesプレイグラウンドも使用できます:</p>
<ul>
<li><a href="https://labs.iximiuz.com/playgrounds?category=kubernetes&filter=all">iximiuz Labs</a></li>
<li><a href="https://killercoda.com/playgrounds/scenario/kubernetes">Killercoda</a></li>
<li><a href="https://kodekloud.com/public-playgrounds">KodeKloud</a></li>
</ul>
 
 
 作業するKubernetesサーバーは次のバージョン以降のものである必要があります: 1.17.
  <p>バージョンを確認するには次のコマンドを実行してください:  <code>kubectl version</code>.</p>

* [残りのkubeadmクラスターをアップグレードするプロセス](/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade)を理解します。
Windowsノードをアップグレードする前にコントロールプレーンノードをアップグレードしたいと思うかもしれません。




<!-- steps -->

## ワーカーノードをアップグレード

### kubeadmをアップグレード

1.  Windowsノードから、kubeadmをアップグレードします。:

    ```powershell
    # 1.36.0を目的のバージョンに置き換えます
    curl.exe -Lo C:\k\kubeadm.exe https://dl.k8s.io/v1.36.0/bin/windows/amd64/kubeadm.exe
    ```

### ノードをドレインする

1.  Kubernetes APIにアクセスできるマシンから、
    ノードをスケジュール不可としてマークして、ワークロードを削除することでノードのメンテナンスを準備します:

    ```shell
    # <node-to-drain>をドレインするノードの名前に置き換えます
    kubectl drain <node-to-drain> --ignore-daemonsets
    ```

    このような出力結果が表示されるはずです:

    ```
    node/ip-172-31-85-18 cordoned
    node/ip-172-31-85-18 drained
    ```

### kubeletの構成をアップグレード

1. Windowsノードから、次のコマンドを呼び出して新しいkubelet構成を同期します:

    ```powershell
    kubeadm upgrade node
    ```

### kubeletをアップグレード

1.  Windowsノードから、kubeletをアップグレードして再起動します:

    ```powershell
    stop-service kubelet
    curl.exe -Lo C:\k\kubelet.exe https://dl.k8s.io/v1.36.0/bin/windows/amd64/kubelet.exe
    restart-service kubelet
    ```

### ノードをオンライン状態に

1.  Kubernetes APIにアクセスできるマシンから、
スケジュール可能としてマークして、ノードをオンラインに戻します:

    ```shell
    # <node-to-drain>をノードの名前に置き換えます
    kubectl uncordon <node-to-drain>
    ```
### kube-proxyをアップグレード

1. Kubernetes APIにアクセスできるマシンから、次を実行します、
もう一度1.36.0を目的のバージョンに置き換えます:

    ```shell
    curl -L https://github.com/kubernetes-sigs/sig-windows-tools/releases/latest/download/kube-proxy.yml | sed 's/VERSION/v1.36.0/g' | kubectl apply -f -
    ```
