k8s部署

部署節點 pikachu1,192.168.146.151

master(node) pikachu2,192.168.146.152

node1 pikachu3,192.168.146.153

node3 pikachu4,192.168.146.154

 

部署節點

#wget download.yunwei.edu/shell/yum-repo.sh
#bash yum-repo.sh

下載安裝docker

#wget http://download2.yunwei.edu/shell/docker.tar.gz

#tar zxvf docker.tar.gz

#cd docker/

#sh docker.sh

#systemctl status docker

#docker images

下載docker版ansible

#docker pull reg.yunwei.edu/learn/ansible:alpine3

#docker run -itd -v /etc/ansible:/etc/ansible -v /etc/kubernetes/:/etc/kubernetes/ -v /root/.kube:/root/.kube -v /usr/local/bin/:/usr/local/bin/ --name ansible 1acb4fd5df5b  /bin/sh

配置域名解析和無祕鑰登錄

下載kubernetes安裝包

#wget http://download2.yunwei.edu/shell/kubernetes.tar.gz

#tar zxvf kubernetes.tar.gz

#cd kubernetes/

#tar zxvf kube-yunwei-197.tar.gz

#cd kube-yunwei-197/

#mv * /etc/ansible

#tar zxvf k8s197.tar.gz

#cd bin/

#mv * /etc/ansible/bin

#cd /etc/ansible

#cd example/

#cp hosts.s-master.example ../hosts

#vim hosts

# 部署節點:運行ansible 腳本的節點
[deploy]
192.168.146.151

# etcd集羣請提供如下NODE_NAME、NODE_IP變量,請注意etcd集羣必須是1,3,5,7...奇數個節點
[etcd]
192.168.146.154 NODE_NAME=etcd1 NODE_IP="192.168.146.154"
192.168.146.152 NODE_NAME=etcd2 NODE_IP="192.168.146.152"
192.168.146.153 NODE_NAME=etcd3 NODE_IP="192.168.146.153"

[kube-master]
192.168.146.152 NODE_IP="192.168.146.152"

[kube-node]
192.168.146.152 NODE_IP="192.168.146.152"
192.168.146.153 NODE_IP="192.168.146.153"
192.168.146.154 NODE_IP="192.168.146.154"

[all:vars]
# ---------集羣主要參數---------------
#集羣部署模式:allinone, single-master, multi-master
DEPLOY_MODE=single-master

#集羣 MASTER IP
MASTER_IP="192.168.146.152"

#集羣 APISERVER
KUBE_APISERVER="https://192.168.146.152:6443"

#TLS Bootstrapping 使用的 Token,使用 head -c 16 /dev/urandom | od -An -t x | tr -d ' ' 生成
BOOTSTRAP_TOKEN="d18f94b5fa585c7123f56803d925d2e7"

# 集羣網絡插件,目前支持calico和flannel
CLUSTER_NETWORK="calico"

# 部分calico相關配置,更全配置可以去roles/calico/templates/calico.yaml.j2自定義
# 設置 CALICO_IPV4POOL_IPIP=“off”,可以提高網絡性能,條件限制詳見 05.安裝calico網絡組件.md
CALICO_IPV4POOL_IPIP="always"
# 設置 calico-node使用的host IP,bgp鄰居通過該地址建立,可手動指定端口"interface=eth0"或使用如下自動發現
IP_AUTODETECTION_METHOD="can-reach=223.5.5.5"

# 部分flannel配置,詳見roles/flannel/templates/kube-flannel.yaml.j2
FLANNEL_BACKEND="vxlan"

# 服務網段 (Service CIDR),部署前路由不可達,部署後集羣內使用 IP:Port 可達
SERVICE_CIDR="10.68.0.0/16"

# POD 網段 (Cluster CIDR),部署前路由不可達,**部署後**路由可達
CLUSTER_CIDR="172.20.0.0/16"

# 服務端口範圍 (NodePort Range)
NODE_PORT_RANGE="20000-40000"

# kubernetes 服務 IP (預分配,一般是 SERVICE_CIDR 中第一個IP)
CLUSTER_KUBERNETES_SVC_IP="10.68.0.1"

# 集羣 DNS 服務 IP (從 SERVICE_CIDR 中預分配)
CLUSTER_DNS_SVC_IP="10.68.0.2"

# 集羣 DNS 域名
CLUSTER_DNS_DOMAIN="cluster.local."

# etcd 集羣間通信的IP和端口, **根據實際 etcd 集羣成員設置**
ETCD_NODES="etcd1=https://192.168.146.152:2380,etcd2=https://192.168.146.153:2380,etcd3=https://192.168.146.154:2380"

# etcd 集羣服務地址列表, **根據實際 etcd 集羣成員設置**
ETCD_ENDPOINTS="https://192.168.146.152:2379,https://192.168.146.153:2379,https://192.168.146.154:2379"

# 集羣basic auth 使用的用戶名和密碼
BASIC_AUTH_USER="admin"
BASIC_AUTH_PASS="admin"

# ---------附加參數--------------------
#默認二進制文件目錄
bin_dir="/usr/local/bin"

#證書目錄
ca_dir="/etc/kubernetes/ssl"

#部署目錄,即 ansible 工作目錄
base_dir="/etc/ansible"

#docker exec -it ansible /bin/sh

/ #ansible all -m ping

在容器中添加域名解析、無祕鑰登錄
/ #ssh-keygen
/ #ssh-copy-id ~


/ #ansible all -m ping

/ #cd /etc/ansible
#ansible-playbook 01.prepare.yml
#ansible-playbook 02.etcd.yml
#ansible-playbook 03.docker.yml
#ansible-playbook 04.kube-master.yml
#ansible-playbook 05.kube-node.yml

在安裝網絡之前把images.tar.gz拷貝到其他節點,解壓
pikachu2,3,4
#cd images
#mv *.tar calico
#mv *.gz calico
#for i in `ls`;do docker load -i $i;done


#ansible-playbook 06.network.yml

容器外
#kubectl get node
#kubectl get namespace
#kubectl get pod -n kube-system
#kubectl get pod -n kube-system -o wide

 

部署節點ansible容器裏
#cd /etc/ansible/manifests/

#cd coredns/

#kubectl create -f .

#cd ..
#cd dashboard/
#kubectl create -f .

生成token
#kubectl -n kube-system describe secret $(kubectl -n kube-system get secret|grep admin-user|awk '{print $1}')

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章