kubernetes-the-hard-way/docs/ja/07-bootstrapping-etcd.md

77 lines
2.0 KiB
Markdown
Raw Normal View History

# etcdクラスタのブートストラップ
Kubernetesコンポーネントはステートレスであり、クラスタの状態を[etcd](https://github.com/etcd-io/etcd)に保存します。このラボでは、3ードのetcdクラスタをブートストラップし、高可用性と安全なリモートアクセスのために設定します。
## 前提条件
`etcd`バイナリとsystemdユニットファイルを`server`インスタンスにコピーします:
```bash
scp \
downloads/etcd-v3.4.27-linux-arm64.tar.gz \
units/etcd.service \
root@server:~/
```
このラボのコマンドはすべて`server`マシン上で実行する必要があります。`ssh`コマンドを使用して`server`マシンにログインします。例:
```bash
ssh root@server
```
## etcdクラスタのブートストラップ
### etcdバイナリのインストール
`etcd`サーバーと`etcdctl`コマンドラインユーティリティを抽出してインストールします:
```bash
{
tar -xvf etcd-v3.4.27-linux-arm64.tar.gz
mv etcd-v3.4.27-linux-arm64/etcd* /usr/local/bin/
}
```
### etcdサーバーの設定
```bash
{
mkdir -p /etc/etcd /var/lib/etcd
chmod 700 /var/lib/etcd
cp ca.crt kube-api-server.key kube-api-server.crt \
/etc/etcd/
}
```
etcdクラスタの各メンバーには固有の名前が必要です。現在のコンピュートインスタンスのホスト名に一致する名前を設定します
`etcd.service` systemdユニットファイルを作成します
```bash
mv etcd.service /etc/systemd/system/
```
### etcdサーバーの起動
```bash
{
systemctl daemon-reload
systemctl enable etcd
systemctl start etcd
}
```
## 検証
etcdクラスタメンバーを一覧表示します
```bash
etcdctl member list
```
```text
6702b0a34e2cfd39, started, controller, http://127.0.0.1:2380, http://127.0.0.1:2379, false
```
次: [Kubernetesコントロールプレーンのブートストラップ](08-bootstrapping-kubernetes-controllers.md)