kubernetes 1.8.4国内安装方案(kubespray)

使用ansible安装方案,不需要配置翻墙,使用的是阿里云的镜像

安装pip,ansible,Jinja2 (centos环境)

安装pip
get-pip.py脚本下载地址 https://bootstrap.pypa.io/get-pip.py
python get-pip.py

安装 ansible
sudo pip install ansible
sudo pip install netaddr

sudo yum install -y git

安装Jinja2组件
sudo pip install --upgrade Jinja2
  1. 生成密钥/公钥(在每个节点上)
    ssh-keygen -t rsa
    选择一个机器做为发布机器,绑定信任关系,允许该机器无密码访问其他节点机器,也需要把本机配置公钥
    例如:
Master A:  
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCXOG416HAhiKraB/vjTbz5bHw0b1ayc95KUmOxS0JKM01x7Jy7sRfPfQ0K9Je7T/nifLIH/UmFLNFzAxnlWjQcM+iMyfgOvlpfYKSJx+uwD2t6bBkhIJ1/rqx2fBPt8uRxQspQosx2CSxbaadsfsdadfdsbZ5KhVsgVlSCyqacjrX0CR3RjcL2t/Lsyt7I7nMJl4Po37O2uHShPjIrxi7ZkRtpn2sG/l6YSIGkLrBl4Gqph/K/MF9hgsQsROf6imm+quT8Py2f/6v+smsUsd/kfZGZJVDsk65M2hMiBbjNmAPYRS/G7emr958oCkTao771hkeg7h8l8X+7f+p3A9 centos@ip-172-31-29-37.ap-southeast-1.compute.internal

node B
将A 机器的公钥 cat ~/.ssh/id_rsa.pub  拷贝后添加到 B机器的authorized_keys 中
如果有多个节点依次添加
  1. 下载kubespray,该代码是在 kubespray 基础上修改gcr镜像为阿里云
    git clone https://github.com/maomaotp/k8s-kubespray.git
  2. 修改集群配置信息
cd kubespray
cp inventory/inventory.example inventory/inventory

inventory 示例 该示例配置了2个节点,可以随时扩展

node1 ansible_ssh_host=172.31.1.1 ansible_user=centos
node2 ansible_ssh_host=172.31.1.2 ansible_user=centos

[kube-master]
node1

[etcd]
node1

[kube-node]
node2

[k8s-cluster:children]
kube-node
kube-master
7. 启动集群
`ansible-playbook -i inventory/inventory cluster.yml  -b -v --private-key=~/.ssh/id_rsa`
8. 添加节点
`ansible-playbook -i inventory/inventory scale.yml  -b -v --private-key=~/.ssh/id_rsa`

11. 安装完成后的  kubectl config文件路径  /root/.kube/config

### ansible inventory 配置文件介绍
* kube-node:   运行的kubernetes 的节点, 运行业务容器
* kube-master: kubernetes 的组件运行的节点
* etcd:    etcd 服务运行的节点,etcd是kubernetes 的存储服务

### 不能使用swap 分区, 否则节点不能正常运行
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。