Installing Kubernetes with kops
内容:
- 平台: AWS
Installing Kubernetes with kops
1.aws configure
安装 awscli:
pip install awscli
创建 IAM User, 获取到 access_key_id
以及 access_key
. 配置验证:
aws configure
2.安装 kops
我会在一台当做
controller
的机器的上执行, 比如一台 EC2.
MacOSX
brew install kops
Linux
wget https://github.com/kubernetes/kops/releases/download/1.10.0/kops-linux-amd64
chmod +x kops-linux-amd64
mv kops-linux-amd64 /usr/local/bin/kops
3.在 route53
创建 DNS域
假设 domain 为k8s-dev.mydomain.com
aws route53 create-hosted-zone --name k8s-dev.mydomain.com --caller-reference 1
说明:
- 可以在 AWS 控制台Route53 创建对应的 host zone 与 DNS record
- 将
k8s-dev.mydomain.com
host zone 的 NS 记录添加到mydomain.com
的记录中
4.创建 S3 存储
S3 用来存储集群的配置
aws s3 mb s3://cluster.k8s-dev.mydomain.com
说明:
- 可以在 AWS 控制台 S3 创建 bucket
5.创建集群
export NAME=cluster.k8s-dev.mydomain.com
export KOPS_STATE_STORE=s3://cluster.k8s-dev.mydomain.com
创建集群配置
kops create cluster $NAME \
--zones=ap-east-1a \
--node-count=2 \
--node-size=m5.large \
--master-size=t3.micro \
--image=383156758163/k8s-1.12-debian-stretch-amd64-hvm-ebs-2019-06-21
--zones
: 需要在 region 的基础上确定 zone, 比如 :ap-east-1a
, 而不是ap-east-1
.
更新集群
kops update cluster --yes $NAME
更新 DNS 记录
- 查询 master 节点的 IP 地址
- 在 route53 更新
api.cluster.xxxx
api.cluster.internal.xxx
的记录
声明配置
kops export kubecfg $NAME
查看集群
kops get cluster
WANDERING...