kubernetes

舵手,飞行员

  • 自动装箱,自我修复,水平扩展,服务发现和负载均衡,自动发现和回滚
  • 密钥和配置管理,存储编排,批量处理执行
  • 集群
    • master(主节点):scaduler(调度器),API server,Controller-Manager(控制管理器),etcd(k8s的db,键值型存储数据库,集群信息的存储,必须做高可用)

    • node: kubelet(接受任务),容器引擎(docker),kube-proxy(service网络的管理与变动,与api-server通信)…

    • Pod: Label,Label Selector
      * Label:key=value
      * Label Selector:

    • Pod:(内部地址)
      * 自主式Pod
      * 控制器Pod

          - RelicationController
          - ReplicaSet(副本集控制器,不直接使用)
          - Deployment(声明式更新的控制器,用于无状态应用),用的多,(二级HPA,水平伸缩控制器)
          - Statefulset(有状态副本集控制器,用于有状态应用)
          - DeamonSet(能够让所有(或者一些特定)的Node节点运行同一个pod)
          - Job(),Cronjob()
      
    • HPA(水平伸缩控制器)

      • HorizontalPodAutoscaler
    • AddOns: 附加组件(DNS,动态创建,改变,删除)

    • internet–>节点网络,–>集群网络(service网络<其ip地址:iptables或ipvs规则中的生成的地址>),–>Pod网络

    • 同一个Pod内的多个容器间:lo

    • 各Pod之间的通信

    • Pod与Service之间的通信label标签

    • CNI(容器网络接口,插件):给k8s提供网络,共享节点网络名称空间。作为守护进程运行

      • flannel:网络配置cron os,叠加网络
      • calico:网络配置,提供网络策略(复杂,但是支持基于BGP,三层网络)
      • canel(第一第二种网络的结合):第一种提供网络,第二种提供策略,这一种综合
        k8s网络
        节点构成
        节点网络图

k8s部署

kubeadm方式部署k8s,

网卡配置:
#cd /etc/sysconfig/network-scripts/
---------------
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=a914396c-e746-43bb-a68c-1f62cdc91202
DEVICE=ens33
ONBOOT=yes
HWADDR=00:0C:29:B6:AD:25
IPV6_PRIVACY=no
ETHTOOL_OPTS="autoneg on"
-----------------------------
#cd /etc/yum.repos.d/
#wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#vim kubernetes.repo
[kubernetes]
name=Kubernetes Repo
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
enabled=1
#yum repolist
#yum install docker-ce kubelet kubeadm kubectl

启动docker

编辑docker文件

  • vim /usr/lib/systemd/system/docker.service
    Environment=“HTTPS_PROXY=http://xxx:1080”
    Environment=“NO_PROXY=127.0.0.1/16,172.20.0.0.1/16”
    kubelet 开机自启动,无需现在启动

kubeadm init --kubernetes-version=v1.12.1 --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/12

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值