小娜老师的讲义-Kubernetes+docker实战(一)
来源:互联网 发布:java 去掉换行符 编辑:程序博客网 时间:2024/04/20 12:39
环境需求:
centos7 64位系统 两台机器
master:192.168.137.51
minion:192.168.137.140
VMnet8共享本地网络
kubernetes 的组件:
etcd
flannel
kube-apiserver
kube-controller-manager
kube-scheduler
kubelet
kube-proxy
Kubernetes cluster setup - on centos 7 minimal installation
1. network configuration
/etc/hosts
/etc/hostname (包含 master, nodes)
保证相互ping通
2. yum install
yum install firewalld ntp deltarp net-tools
systemctl stop firewalld
systemctl disable firewalld
systemctl start ntpd
systemctl enable ntpd
3.selinux
修改 /etc/selinux/config
然后重启reboot保证生效
4.master 节点配置:
i) yum install kubernetes etcd flannel
ii) configure etcd
修改配置文件/etc/etcd/etcd.conf,确保etcd监听所有地址
ETCD_NAME=default
ETCD_DATA_DIR=”/var/lib/etcd/default.etcd”
ETCD_LISTEN_CLIENT_URLS=”http://0.0.0.0:2379”
ETCD_ADVERTISE_CLIENT_URLS=“http://master:2379”
iii) configure apiserver
修改 /etc/kubernetes/apiserver
KUBE_API_ADDRESS=”–address=0.0.0.0”
KUBE_API_PORT=“–port=8080”
KUBELET_PORT=”–kubelet-port=10250”
KUBE_ETCD_SERVERS=”–etcd-servers=http://master:2379”
KUBE_SERVICE_ADDRESSES=”–service-cluster-ip-range=10.254.0.0/16”
KUBE_ADMISSION_CONTROL=“–admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ResourceQuota”
iv) edit configuration file
修改 /etc/kubernetes/config
KUBE_LOGTOSTDERR=”–logtostderr=true”
KUBE_LOG_LEVEL=”–v=0”
KUBE_ALLOW_PRIV=”–allow-privileged=false”
KUBE_MASTER=“–master=http://master:8080”
v) configure flannel
修改 /etc/sysconfig/flanneld
FLANNEL_ETCD=”http://master:2379”
FLANNEL_ETCD_KEY=“/coreos.com/network”
vi) 定义flannel网络配置到etcd,这个配置会推送到各个minions的flannel服务上
etcdctl mk /coreos.com/network/config ‘{“Network”:”172.17.0.0/16”}’
vii) 启动服务
for SERVICES in etcd kube-apiserver kube-controller-manager kube-scheduler; do
systemctl restart $SERVICES
systemctl enable $SERVICES
systemctl status $SERVICES
done
5.node 配置:
i) docker
yum install docker
systemctl enable docker
systemctl start docker
ii) flannel
yum install flannel
为etcd服务配置flannel,修改配置文件 /etc/sysconfig/flanneld
FLANNEL_ETCD=”http://master:2379”
FLANNEL_ETCD_KEY=”/coreos.com/network”
iii) 修改 /etc/kubernetes/config
KUBE_LOGTOSTDERR=”–logtostderr=true” KUBE_LOG_LEVEL=”–v=0”
KUBE_ALLOW_PRIV=”–allow-privileged=false”
KUBE_MASTER=”–master=http://master:8080”
iv) 修改 /etc/kubernetes/kubelet
KUBELET_ADDRESS=”–address=0.0.0.0”
KUBELET_PORT=”–port=10250”
KUBELET_HOSTNAME=”–hostname-override=minion”
KUBELET_API_SERVER=”–api-servers=http://master:8080”
KUBELET_POD_INFRA_CONTAINER=”–pod-infra-container-image=yparis25/infra-image-pause”
KUBELET_ARGS=”–register-node=true”
v) enable/start
启动服务
for SERVICES in kube-proxy kubelet docker flanneld; do
systemctl restart $SERVICES
systemctl enable $SERVICES
systemctl status $SERVICES
done
在每个minion可以看到2块网卡:docker0和flannel0,这2块网卡的ip在不同的机器ip地址不同:
6.check if cluster is running:
kubectl get nodes
kubernetes的集群就配置完成惹!
- 小娜老师的讲义-Kubernetes+docker实战(一)
- 小娜老师的讲义-Docker基础知识-容器(一)
- 小娜老师的讲义-Docker的管理工具们(Kubernetes)
- 小娜老师的讲义-Docker基础知识-容器(二)
- 小娜老师的讲义-Docker基础知识-仓库
- 小娜老师的讲义-Docker基础知识-数据管理
- 小娜老师的讲义-Docker基础知识-网络基础配置
- 小娜老师的讲义-Docker基础知识-编写Dockerfile
- 小娜老师的讲义-搭建私人镜像
- Kubernetes实战(一)
- Docker实战系列—第四话–kubernetes(一)-什么是kubernetes?
- 小娜老师的讲义-搭建支持Web服务的镜像(Apache)
- 小娜老师的讲义-搭建支持Web服务的镜像(Nginx)
- Docker与Kubernetes系列(一): Docker的基本概念
- Docker与Kubernetes系列(一): Docker的基本概念
- kubernetes实战-基于redis和docker的留言簿案例
- kubernetes实战-基于redis和docker的留言簿案例
- Docker实战(一):Docker基础命令
- 【c语言】模拟实现strcpy函数:
- Qt Ui的使用
- 三层登录
- 解决mysql乱码
- 批处理bat文件
- 小娜老师的讲义-Kubernetes+docker实战(一)
- servlet的请求和响应
- 12约瑟夫环
- LeetCode题解-2-Add Two Numbers
- GDBT XGBoost
- java2SE基础知识点整理(一)
- 1001关系推断
- python中@修饰器
- 150. Evaluate Reverse Polish Notation