zjp0633 发表于 2018-1-4 22:58:03

二、安装并配置Kubernetes Master节点

1. 安装配置Master节点上的Kubernetes服务

1.1 安装Master节点上的Kubernetes服务
  yum -y install kubernetes

1.2 修改kube-apiserver服务配置文件
  vim /etc/kubernetes/apiserver
  

KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0"  
KUBE_API_PORT="--port=8080"
  
KUBE_ETCD_SERVERS="--etcd-servers=http://etcd1:2379,http://etcd2:2379,http://etcd3:2379"
  
KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=172.16.0.0/16--service-node-port-range=3000-65535"
  
KUBE_ADMISSION_CONTROL="--admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ResourceQuota"
  
KUBE_API_ARGS=""
  

  启动参数说明



[*]--etcd-servers:指定etcd服务的URL
[*]--insecure-bind-address:apiserver绑定主机的非安全IP地址,设置0.0.0.0表示监听所有IP
[*]--insecure-port:apiserver绑定主机的非安全端口号,默认为8080
[*]--service-cluster-ip-range:Kubernetes集群中Service的虚拟IP地址段范围,以CIDR格式表示,该IP范围不能与物理机的真实IP段有重合
[*]--service-node-port-range:Kubernetes集群中Service可映射的物理机端口范围,默认为30000-32767
[*]--admission-control:Kubernetes集群的准入控制设置爱,个控制模块以插件的形式生效


1.3 修改kubernetes配置文件
  vim /etc/kubernetes/config
  

KUBE_LOGTOSTDERR="--logtostderr=true"  
KUBE_LOG_LEVEL="--v=0"
  
KUBE_ALLOW_PRIV="--allow-privileged=false"
  
KUBE_MASTER="--master=http://k8s-master:8080"    #定义Master地址及端口信息
  

1.4 启动(并设置为开启自启)Master节点上所需服务
  systemctl enable kube-apiserver.service
  
systemctl start kube-apiserver.service
  
systemctl enable kube-controller-manager.service
  
systemctl start kube-controller-manager.service
  
systemctl enable kube-scheduler.service
  
systemctl start kube-scheduler.service
  
  至此,Kubernetes Master节点部署完成,部署完成后开始部署Kubernetes Node节点。

2. 服务功能简介

2.1 kube-apiserver(被其他服务所依赖)
  API Server提供了Kubernetes各类资源对象的增删查改等HTTP Rest接口,是整个系统的数据总线和数据中心。
  
kubernetes API Server的功能:


[*]提供了集群管理的REST API接口(包括认证授权、数据校验以及集群状态变更);
[*]提供其他模块之间的数据交互和通信的枢纽(其他模块通过API Server查询或修改数据,只有API Server才直接操作etcd);
[*]是资源配额控制的入口;
[*]拥有完备的集群安全机制.
2.2 kube-controller-manager
  保证在任何时间某个 pod 都有特定数量的副本在运行,它的主要的工作就是和 apiserver 通信,获取集群的特定信息,然后做出响应的反馈动作。

2.3 kube-scheduler
  scheduler 是 kubernetes 的调度器,主要的任务是把定义的 pod 分配到集群的节点上。
  
scheduler实现的功能:


[*]公平:如何保证每个节点都能被分配资源
[*]资源高效利用:集群所有资源最大化被使用
[*]效率:调度的性能要好,能够尽快地对大批量的 pod 完成调度工作
[*]灵活:允许用户根据自己的需求控制调度的逻辑
页: [1]
查看完整版本: 二、安装并配置Kubernetes Master节点