摘要:
本节内容 1. shell函数 2. shell正则表达式 shell函数 shell中允许将一组命令集合或语句形成一段可用代码,这些代码块称为shell函数。给这段代码起个名字称为函数名,后续可以直接调用该段代码。 格式 实例1: Shell 函数很简单,函数名后跟双括号,再跟双大括号。通过函数名 阅读全文
摘要:
本节内容 1. shell流程控制 2. for语句 3. while语句 4. break和continue语句 5. case语句 6. shell编程高级实战 shell流程控制 流程控制是改变程序运行顺序的指令。linux shell有一套自己的流程控制语句,其中包括条件语句(if),循环语 阅读全文
摘要:
本节内容 1. shell变量简介 2. 定义变量 3. 使用变量 4. 修改变量的值 5. 单引号和双引号的区别 6. 将命令的结果赋值给变量 7. 删除变量 8. 变量类型 9. 特殊变量列表 10. 退出状态 11. shell表达式与运算符 11.1 条件表达式 11.2 整数比较符 11. 阅读全文
摘要:
本节内容 1.shell简介 2. shell分类 3. 查看shell 4. 第一个shell脚本 5. shell编程常用命令 5.1 grep 5.2 cut 5.3 sort 5.4 uniq 5.5 seq 5.6 tr 6. 课后作业 前言 什么是脚本? 脚本简单地说就是一条条的文字命令 阅读全文
摘要:
service 每个 Pod 都有自己的 IP 地址。当 controller 用新 Pod 替代发生故障的 Pod 时,新 Pod 会分配到新的 IP 地址。这样就产生了一个问题: 如果一组 Pod 对外提供服务(比如 HTTP),它们的 IP 很有可能发生变化,那么客户端如何找到并访问这个服务呢 阅读全文
摘要:
Job 容器按照持续运行的时间可分为两类:服务类容器和工作类容器。 服务类容器通常持续提供服务,需要一直运行,比如 http server,daemon 等。工作类容器则是一次性任务,比如批处理程序,完成后容器就退出。 Kubernetes 的 Deployment、ReplicaSet 和 Dae 阅读全文
摘要:
deployment 我们已经知道k8s是通过各种controller来管理pod的生命周期。为了满足不同业务场景,k8s开发了Deployment、ReplicaSet、DaemonSet、StatefuleSet、Job 等多种 Controller。我们首先学习最常用的 Deployment。 阅读全文
摘要:
master节点 k8s的集群由master和node组成,节点上运行着若干k8s服务。 master节点之上运行着的后台服务有kube-apiserver 、kube-scheduler、kube-controller-manager、etcd和pod网络。如下图所示 1. API Server( 阅读全文
摘要:
重要概念 1. cluster cluster是 计算、存储和网络资源的集合,k8s利用这些资源运行各种基于容器的应用。 2.master master是cluster的大脑,他的主要职责是调度,即决定将应用放在那里运行。master运行linux操作系统,可以是物理机或者虚拟机。为了实现高可用,可 阅读全文
摘要:
Docker logs 对于一个运行的容器,Docker 会将日志发送到 容器的 标准输出设备(STDOUT)和标准错误设备(STDERR),STDOUT 和 STDERR 实际上就是容器的控制台终端。 举个例子,用下面的命令运行 httpd 容器: 因为我们在启动日志的时候没有用-d 参数,htt 阅读全文
摘要:
docker自带的监控命令 docker自带了三个监控命令即ps, top, stats ps docker ps 可以帮助我们很快的了解当前正在运行的容器 -a:会显示已经停掉的容器 top 如果想知道某个容器中运行了哪些进程,可以执行如下的命令: stats 用于显示每个容器各种资源的使用情况。 阅读全文
摘要:
容器网络 在前面的博客中已经详细讲解了几种网络方案: none, host, bridge,user-defined。但是他们只是解决了单个主机间的容器的通信问题,并不能实现多个主机容器之间的通信。本篇博客将详细介绍如何实现该功能。 跨主机网络方案包括两大类: 本篇博客将详细讲解overlay以及w 阅读全文
摘要:
docker多主机管理 前面我们的实验环境中只有一个 docker host,所有的容器都是运行在这一个 host 上的。但在真正的环境中会有多个 host,容器在这些 host 中启动、运行、停止和销毁,相关容器会通过网络相互通信,无论它们是否位于相同的 host。 对于这样一个 multi-ho 阅读全文
摘要:
分发镜像 我们已经会构建自己的镜像了,那么如果在多个docker主机上使用镜像那?有如下的几种可用的方法: 镜像命名 无论采用何种方式保存和分发镜像,首先都得给镜像命名。 通过 dock images ls 可以查看镜像的信息。 这里注意到myimage 对应的是 REPOSITORY,而且还有一个 阅读全文
摘要:
镜像构建介绍 在什么情况下我们需要自己构建镜像那? (1)当我们找不到现有的镜像,比如自己开发的应用程序 (2)需要在镜像中加入特定的功能 docker构建镜像有两种方式:docker commit命令与Dockerfile构建文件 docker commit构建镜像 dockercommit构建进 阅读全文
摘要:
本章内容 1.dokcer默认自带的几种网络介绍 2. 自定义网络 3. 容器间通信 4. 容器与外界交互 docker网络分为单个主机上的容器网络和多个主机上的哇网络,本文主要讲解单个主机上的容器网络。 1. dokcer默认自带的几种网络介绍 一、none 二、host 三、bridge 可以使 阅读全文
摘要:
tomcat简介 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。 Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系 阅读全文
摘要:
haproxy简介 HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。基于合理的配置及优化,完全可以实现单机支持数 以万计的并发连接。 HAProxy支持2种主要的代理模式:第一种代理模式是"tcp",即OSI网络模型中的第4 阅读全文
摘要:
xshell连接虚拟机 第一步:网络模式更改为桥接模式 第二步:重启网络 第三步:获取IP地址 输入命令ip a 第四步:修改sshd配置文件 修改38行处允许root远程登录 修改115行处不适用DNS解析 第五步:重启sshd服务 第六步:关闭selinux 暂时关闭(立即生效) 永久关闭(重启 阅读全文
摘要:
grafana简介 Grafana是一个跨平台的开源的度量分析和可视化工具,可以通过将采集的数据查询然后可视化的展示,并及时通知。它主要有以下六大特点: 1、展示方式:快速灵活的客户端图表,面板插件有许多不同方式的可视化指标和日志,官方库中具有丰富的仪表盘插件,比如热图、折线图、图表等多种展示方式; 阅读全文
摘要:
本节内容 useradd userdel usermod groupadd groupdel 用户管理 为什么需要有用户? 1. linux是一个多用户系统 2. 权限管理(权限最小化) 用户:存在的目录是为了对系统中的资源做归属 密码:存在的目的是为了对用户做身份认证 用户和用户组 用户组,在用户 阅读全文
摘要:
rpm简介 这是一个数据库管理工具,可以通过读取数据库,判断软件是否已经安装,如果已经安装可以读取出来所有文件的所在位置等,并可以实现删除这些文件。 rpm:RPM is Redhat Package Manager(递归缩写) rpm可以完成的操作 安装软件 卸载软件 查询软件信息 升级、降级 检 阅读全文
摘要:
vi编辑器 作用:编辑文本文件中的内容的工具 命令历史 末行模式中,以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。 启动vim 在命令行窗口中输入以下命令即可 vim 直接启动vim vim filename 打开vim并创建名为filename的文 vim的模 阅读全文
摘要:
本节内容 pidofpstopipuptimewgetcurltrddtargrepfind 命令详解 1.pidof 获取正在运行程序的PID 实例1: 2.ps 查看系统中的进程状态 常用组合选项: aux:是用BSD的格式来显示 显示的项目有:USER , PID , %CPU , %MEM 阅读全文
摘要:
本节内容 aliasunaliasunamesuhostnamehistorywhichwcwwhowhoamipingkillseqdudffreedate 命令详解 1. alias 设置、’查看别名 实例1:查看别名 实例2:设置别名 实例3:取消别名 2.uname 显示输出系统信息 -a: 阅读全文