diff --git a/content/ja/docs/setup/production-environment/tools/kubeadm/install-kubeadm.md b/content/ja/docs/setup/production-environment/tools/kubeadm/install-kubeadm.md
index 20d8adfcf6845..40d46f19122e7 100644
--- a/content/ja/docs/setup/production-environment/tools/kubeadm/install-kubeadm.md
+++ b/content/ja/docs/setup/production-environment/tools/kubeadm/install-kubeadm.md
@@ -10,27 +10,27 @@ card:
{{% capture overview %}}
-This page shows how to install the `kubeadm` toolbox.
-For information how to create a cluster with kubeadm once you have performed this installation process, see the [Using kubeadm to Create a Cluster](/ja/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/) page.
+
+このページでは`kubeadm`コマンドをインストールする方法を示します。このインストール処理実行後にkubeadmを使用してクラスターを作成する方法については、[kubeadmを使用したシングルマスタークラスターの作成](/ja/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/)を参照してください。
{{% /capture %}}
{{% capture prerequisites %}}
-* One or more machines running one of:
+* 次のいずれかが動作しているマシンが必要です
- Ubuntu 16.04+
- - Debian 9
+ - Debian 9+
- CentOS 7
- - RHEL 7
- - Fedora 25/26 (best-effort)
+ - Red Hat Enterprise Linux (RHEL) 7
+ - Fedora 25+
- HypriotOS v1.0.1+
- Container Linux (tested with 1800.6.0)
-* 2 GB or more of RAM per machine (any less will leave little room for your apps)
-* 2 CPUs or more
-* Full network connectivity between all machines in the cluster (public or private network is fine)
-* Unique hostname, MAC address, and product_uuid for every node. See [here](#MACアドレスとproduct_uuidが全てのノードでユニークであることの検証) for more details.
-* Certain ports are open on your machines. See [here](#必須ポートの確認) for more details.
-* Swap disabled. You **MUST** disable swap in order for the kubelet to work properly.
+* 1台あたり2GB以上のメモリ(2GBの場合、アプリ用のスペースはほとんどありません)
+* 2コア以上のCPU
+* クラスター内のすべてのマシン間で通信可能なネットワーク(パブリックネットワークでもプライベートネットワークでも構いません)
+* ユニークなhostname、MACアドレス、とproduct_uuidが各ノードに必要です。詳細は[ここ](#MACアドレスとproduct_uuidが全てのノードでユニークであることの検証)を参照してください。
+* マシン内の特定のポートが開いていること。詳細は[ここ](#必須ポートの確認)を参照してください。
+* Swapがオフであること。kubeletが正常に動作するためにはswapは**必ず**オフでなければなりません。
{{% /capture %}}
@@ -38,125 +38,125 @@ For information how to create a cluster with kubeadm once you have performed thi
## MACアドレスとproduct_uuidが全てのノードでユニークであることの検証
-* You can get the MAC address of the network interfaces using the command `ip link` or `ifconfig -a`
-* The product_uuid can be checked by using the command `sudo cat /sys/class/dmi/id/product_uuid`
+* ネットワークインターフェースのMACアドレスは`ip link`もしくは`ifconfig -a`コマンドで取得できます。
+* product_uuidは`sudo cat /sys/class/dmi/id/product_uuid`コマンドで確認できます。
-It is very likely that hardware devices will have unique addresses, although some virtual machines may have
-identical values. Kubernetes uses these values to uniquely identify the nodes in the cluster.
-If these values are not unique to each node, the installation process
-may [fail](https://github.com/kubernetes/kubeadm/issues/31).
+ハードウェアデバイスではユニークなアドレスが割り当てられる可能性が非常に高いですが、VMでは同じになることがあります。Kubernetesはこれらの値を使用して、クラスター内のノードを一意に識別します。これらの値が各ノードに固有ではない場合、インストール処理が[失敗](https://github.com/kubernetes/kubeadm/issues/31)することもあります。
## ネットワークアダプタの確認
-If you have more than one network adapter, and your Kubernetes components are not reachable on the default
-route, we recommend you add IP route(s) so Kubernetes cluster addresses go via the appropriate adapter.
+複数のネットワークアダプターがあり、Kubernetesコンポーネントにデフォルトで到達できない場合、IPルートを追加して、Kubernetesクラスターのアドレスが適切なアダプターを経由するように設定することをお勧めします。
+
+## iptablesがnftablesバックエンドを使用しないようにする
+
+Linuxでは、カーネルのiptablesサブシステムの最新の代替品としてnftablesが利用できます。`iptables`ツールは互換性レイヤーとして機能し、iptablesのように動作しますが、実際にはnftablesを設定します。このnftablesバックエンドは現在のkubeadmパッケージと互換性がありません。(ファイアウォールルールが重複し、`kube-proxy`を破壊するためです。)
+
+もしあなたのシステムの`iptables`ツールがnftablesバックエンドを使用している場合、これらの問題を避けるために`iptables`ツールをレガシーモードに切り替える必要があります。これは、少なくともDebian 10(Buster)、Ubuntu 19.04、Fedora 29、およびこれらのディストリビューションの新しいリリースでのデフォルトです。RHEL 8はレガシーモードへの切り替えをサポートしていないため、現在のkubeadmパッケージと互換性がありません。
+
+{{< tabs name="iptables_legacy" >}}
+{{% tab name="Debian or Ubuntu" %}}
+```bash
+sudo update-alternatives --set iptables /usr/sbin/iptables-legacy
+sudo update-alternatives --set ip6tables /usr/sbin/ip6tables-legacy
+sudo update-alternatives --set arptables /usr/sbin/arptables-legacy
+sudo update-alternatives --set ebtables /usr/sbin/ebtables-legacy
+```
+{{% /tab %}}
+{{% tab name="Fedora" %}}
+```bash
+update-alternatives --set iptables /usr/sbin/iptables-legacy
+```
+{{% /tab %}}
+{{< /tabs >}}
## 必須ポートの確認
### マスターノード
-| Protocol | Direction | Port Range | Purpose | Used By |
-|----------|-----------|------------|-------------------------|---------------------------|
-| TCP | Inbound | 6443* | Kubernetes API server | All |
-| TCP | Inbound | 2379-2380 | etcd server client API | kube-apiserver, etcd |
-| TCP | Inbound | 10250 | Kubelet API | Self, Control plane |
-| TCP | Inbound | 10251 | kube-scheduler | Self |
-| TCP | Inbound | 10252 | kube-controller-manager | Self |
+| プロトコル | 通信の向き | ポート範囲 | 目的 | 使用者 |
+|-----------|------------|------------|-------------------------|---------------------------|
+| TCP | Inbound | 6443* | Kubernetes API server | All |
+| TCP | Inbound | 2379-2380 | etcd server client API | kube-apiserver, etcd |
+| TCP | Inbound | 10250 | Kubelet API | Self, Control plane |
+| TCP | Inbound | 10251 | kube-scheduler | Self |
+| TCP | Inbound | 10252 | kube-controller-manager | Self |
### ワーカーノード
-| Protocol | Direction | Port Range | Purpose | Used By |
-|----------|-----------|-------------|-----------------------|-------------------------|
-| TCP | Inbound | 10250 | Kubelet API | Self, Control plane |
-| TCP | Inbound | 30000-32767 | NodePort Services** | All |
+| プロトコル | 通信の向き | ポート範囲 | 目的 | 使用者 |
+|-----------|------------|-------------|-------------------------|-------------------------|
+| TCP | Inbound | 10250 | Kubelet API | Self, Control plane |
+| TCP | Inbound | 30000-32767 | NodePort Services** | All |
-** Default port range for [NodePort Services](/docs/concepts/services-networking/service/).
+** [NodePort Services](/docs/concepts/services-networking/service/)のデフォルトのポートの範囲
-Any port numbers marked with * are overridable, so you will need to ensure any
-custom ports you provide are also open.
+\*の項目は書き換え可能です。そのため、あなたが指定したカスタムポートも開いていることを確認する必要があります。
-Although etcd ports are included in control-plane nodes, you can also host your own
-etcd cluster externally or on custom ports.
+etcdポートはコントロールプレーンノードに含まれていますが、独自のetcdクラスターを外部またはカスタムポートでホストすることもできます。
-The pod network plugin you use (see below) may also require certain ports to be
-open. Since this differs with each pod network plugin, please see the
-documentation for the plugins about what port(s) those need.
+使用するPodネットワークプラグイン(以下を参照)のポートも開く必要があります。これは各Podネットワークプラグインによって異なるため、必要なポートについてはプラグインのドキュメントを参照してください。
## ランタイムのインストール
-Since v1.6.0, Kubernetes has enabled the use of CRI, Container Runtime Interface, by default.
+v1.6.0以降、KubernetesはデフォルトでCRI(Container Runtime Interface)の使用を有効にしています。
-Since v1.14.0, kubeadm will try to automatically detect the container runtime on Linux nodes
-by scanning through a list of well known domain sockets. The detectable runtimes and the
-socket paths, that are used, can be found in the table below.
+また、v1.14.0以降、kubeadmは既知のドメインソケットのリストをスキャンして、Linuxノード上のコンテナランタイムを自動的に検出しようとします。検出可能なランタイムとソケットパスは、以下の表に記載されています。
-| Runtime | Domain Socket |
+| ランタイム | ドメインソケット |
|------------|----------------------------------|
| Docker | /var/run/docker.sock |
| containerd | /run/containerd/containerd.sock |
| CRI-O | /var/run/crio/crio.sock |
-If both Docker and containerd are detected together, Docker takes precedence. This is
-needed, because Docker 18.09 ships with containerd and both are detectable.
-If any other two or more runtimes are detected, kubeadm will exit with an appropriate
-error message.
+Dockerとcontainerdの両方が同時に検出された場合、Dockerが優先されます。Docker 18.09にはcontainerdが同梱されており、両方が検出可能であるため、この仕様が必要です。他の2つ以上のランタイムが検出された場合、kubeadmは適切なエラーメッセージで終了します。
-On non-Linux nodes the container runtime used by default is Docker.
+Linux以外のノードでは、デフォルトで使用されるコンテナランタイムはDockerです。
-If the container runtime of choice is Docker, it is used through the built-in
-`dockershim` CRI implementation inside of the `kubelet`.
+もしコンテナランタイムとしてDockerを選択した場合、`kebelet`内に組み込まれた`dockershim` CRIが使用されます。
-Other CRI-based runtimes include:
+その他のCRIに基づくランタイムでは以下を使用します
- [containerd](https://github.com/containerd/cri) (CRI plugin built into containerd)
- [cri-o](https://cri-o.io/)
- [frakti](https://github.com/kubernetes/frakti)
-Refer to the [CRI installation instructions](/ja/docs/setup/production-environment/container-runtimes/) for more information.
+詳細は[CRIのインストール](/ja/docs/setup/production-environment/container-runtimes/)を参照してください。
## kubeadm、kubelet、kubectlのインストール
-You will install these packages on all of your machines:
+以下のパッケージをマシン上にインストールしてください
-* `kubeadm`: the command to bootstrap the cluster.
+* `kubeadm`: クラスターを起動するコマンドです。
-* `kubelet`: the component that runs on all of the machines in your cluster
- and does things like starting pods and containers.
+* `kubelet`: クラスター内のすべてのマシンで実行されるコンポーネントです。
+ Podやコンテナの起動などを行います。
-* `kubectl`: the command line util to talk to your cluster.
+* `kubectl`: クラスターにアクセスするためのコマンドラインツールです。
-kubeadm **will not** install or manage `kubelet` or `kubectl` for you, so you will
-need to ensure they match the version of the Kubernetes control plane you want
-kubeadm to install for you. If you do not, there is a risk of a version skew occurring that
-can lead to unexpected, buggy behaviour. However, _one_ minor version skew between the
-kubelet and the control plane is supported, but the kubelet version may never exceed the API
-server version. For example, kubelets running 1.7.0 should be fully compatible with a 1.8.0 API server,
-but not vice versa.
+kubeadmは`kubelet`や`kubectl`をインストールまたは管理**しない**ため、kubeadmにインストールするKubernetesコントロールプレーンのバージョンと一致させる必要があります。そうしないと、予期しないバグのある動作につながる可能性のあるバージョン差異(version skew)が発生するリスクがあります。ただし、kubeletとコントロールプレーン間のマイナーバージョン差異(minor version skew)は_1つ_サポートされていますが、kubeletバージョンがAPIサーバーのバージョンを超えることはできません。たとえば、1.7.0を実行するkubeletは1.8.0 APIサーバーと完全に互換性がありますが、その逆はできません。
-For information about installing `kubectl`, see [Install and set up kubectl](/docs/tasks/tools/install-kubectl/).
+`kubectl`のインストールに関する詳細情報は、[kubectlのインストールおよびセットアップ](/docs/tasks/tools/install-kubectl/)を参照してください。
{{< warning >}}
-These instructions exclude all Kubernetes packages from any system upgrades.
-This is because kubeadm and Kubernetes require
-[special attention to upgrade](/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade-1-11/).
+これらの手順はシステムアップグレードによるすべてのKubernetesパッケージの更新を除きます。これはkubeadmとKubernetesが[アップグレードにおける特別な注意](docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/)を必要とするからです。
{{ warning >}}
-For more information on version skews, see:
+バージョン差異(version skew)に関しては下記を参照してください。
-* Kubernetes [version and version-skew policy](/ja/docs/setup/release/version-skew-policy/)
-* Kubeadm-specific [version skew policy](/ja/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/#version-skew-policy)
+* Kubernetes [Kubernetesバージョンとバージョンスキューサポートポリシー](/ja/docs/setup/release/version-skew-policy/)
+* Kubeadm-specific [バージョン互換ポリシー](/ja/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/#version-skew-policy)
{{< tabs name="k8s_install" >}}
{{% tab name="Ubuntu, Debian or HypriotOS" %}}
```bash
-apt-get update && apt-get install -y apt-transport-https curl
-curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
-cat </etc/apt/sources.list.d/kubernetes.list
+sudo apt-get update && sudo apt-get install -y apt-transport-https curl
+curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
+cat <}}
+kubeadmが何をすべきか指示するまで、kubeletはクラッシュループで数秒ごとに再起動します。
-The kubelet is now restarting every few seconds, as it waits in a crashloop for
-kubeadm to tell it what to do.
-
-## マスターノードのkubeletによって使用されるcgroupドライバの設定
+## マスターノードのkubeletによって使用されるcgroupドライバーの設定
-When using Docker, kubeadm will automatically detect the cgroup driver for the kubelet
-and set it in the `/var/lib/kubelet/kubeadm-flags.env` file during runtime.
+Dockerを使用した場合、kubeadmは自動的にkubelet向けのcgroupドライバーを検出し、それを実行時に`/var/lib/kubelet/kubeadm-flags.env`ファイルに設定します。
-If you are using a different CRI, you have to modify the file
-`/etc/default/kubelet` with your `cgroup-driver` value, like so:
+もしあなたが異なるCRIを使用している場合、`/etc/default/kubelet`(CentOS、RHEL、Fedoraでは`/etc/sysconfig/kubelet`)ファイル内の`cgroup-driver`の値を以下のように変更する必要があります。
```bash
KUBELET_EXTRA_ARGS=--cgroup-driver=
```
-This file will be used by `kubeadm init` and `kubeadm join` to source extra
-user defined arguments for the kubelet.
+このファイルは、kubeletの追加のユーザー定義引数を取得するために、`kubeadm init`および`kubeadm join`によって使用されます。
-Please mind, that you **only** have to do that if the cgroup driver of your CRI
-is not `cgroupfs`, because that is the default value in the kubelet already.
+CRIのcgroupドライバーが`cgroupfs`でない場合に**のみ**それを行う必要があることに注意してください。なぜなら、これは既にkubeletのデフォルト値であるためです。
-Restarting the kubelet is required:
+kubeletをリスタートする方法:
```bash
systemctl daemon-reload
systemctl restart kubelet
```
-The automatic detection of cgroup driver for other container runtimes
-like CRI-O and containerd is work in progress.
-
+CRI-Oやcontainerdといった他のコンテナランタイムのcgroup driverは実行中に自動的に検出されます。
## トラブルシュート
-If you are running into difficulties with kubeadm, please consult our [troubleshooting docs](/ja/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/).
+kubeadmで問題が発生した場合は、[トラブルシューティング](/ja/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/)を参照してください。
{{% capture whatsnext %}}
-* [Using kubeadm to Create a Cluster](/ja/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/)
+* [kubeadmを使用したシングルマスタークラスターの作成](/ja/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/)
{{% /capture %}}