k8s关键知识点汇总(一)

k8s是什么:Docker分布式系统解决方案

单机版k8s环境搭建:centos7

systemctl disabled firewalld

systemctl stop firewalld

安装etcd(高可用键值数据库)和k8s

yum update #多次尝试,确认网络 连接

yum install -y etcd kubernetes

启动服务(进程)

systemctl start etcd

systemctl start docker #容器创建管理

systemctl start kube-apiserver #所有资源增、删、改、查等操作入口

systemctl start kube-controller-manager #自动化控制中心

systemctl start kube-scheduler #pod调度

systemctl start kubelet #node节点进程,负责pod对应容器创建、起停

sustemctl start kube-proxy #service通信及负载均衡机制组件

常用操作命令

kubectl get nodes #查看集群中node个数

kubectl descripe node <node_name> #查看详细信息

kubectl create -f *.yaml #创建yaml对应资源文件(即kind对象)

kubectl get 对象名称 #查看对象信息

kubectl get svc service_name -o yaml #查看service ClusterIP

kubectl get pods --namespace=namespace_name #查看命名空间的中的对象

基本概念

k8s中所有资源对象都可以使用yaml或JSON文件定义或描述

通常一个节点运行几百个pod

master 集群控制节点 占用一个服务器,高可用占3个服务器

node node工作节点 可以是物理机或虚拟机,node IP物理网卡的IP地址

pod kind:pod,包含一个pause容器和其他业务容器(共享pause的网络栈和volume挂载卷),具有单独的ip地址及Endpoint(Pod IP+ContainerPort pod之间彼此通信,流量通过TCP/IP node IP流出)

Label 一个资源对象(node、pod、service、rc)可以任意多label,一个label可以任意多资源对象

Replication Controller(RC) 描述期望pod的副本数,根据标签筛选目标pod,实际副本小于预期则根据模版创建pod

Deployment RC的升级,可以随时查看当前部署进度

Horizontal Pod Autoscaler(HPA) 横向扩容,可以使用yaml定义之外的方式定义

StatefulSet 用于管理有状态的集群,例如MySql集群,每个pod都有稳定唯一的网络标示及规范名称

Service 具有虚拟IP(Cluster IP)不可ping属于k8s集群内部地址,yaml可定义多端口,可使用type=NodePort实现外部访问Service(例如web端的服务模块),但有负载均衡问题,若运行在谷歌GCE公有云(type=LoardBalancer)则可以解决

Volume 存储卷 Pod中能被多容器访问的共享目录

Persistent Volume 网络存储

Namespace 命名空间 实现多租户资源隔离,一旦创建就可以指定资源对象(×.yaml)在那个Namespace

Annotation 注解

本文转自CSDN-k8s关键知识点汇总(一)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值