自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Linux高性能服务器编程笔记(四)

第四章 TCP/IP通信案例4.2 部署代理服务器4.2.1 HTTP代理服务器的工作原理正向代理服务器:要求客户端自己设置代理服务器的地址,客户的每次请求都将直接发送到该代理服务器,并由代理服务器来请求目标资源(client->proxy->Internet),示例:翻墙反向代理服务器:被设置在服务器端,用代理服务器来接收Internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从内部服务器上得到的结果返回给客户端。(Internet->proxy->clien

2022-01-05 15:04:09 1422

原创 Linux高性能服务器编程笔记(三)

第三章 TCP协议详解参考引用:关于三次握手和四次挥手,面试官想听到怎样的回答? - 车小胖的回答 - 知乎https://www.zhihu.com/question/271701044/answer/398114686关于三次握手和四次挥手,面试官想听到怎样的回答? - 小林coding的回答 - 知乎https://www.zhihu.com/question/271701044/answer/1279809269终于到重点中的重点的TCP协议了T_T!3.1 TCP服务的特点面向连

2022-01-03 20:13:04 1015

原创 Linux高性能服务器编程笔记(二)

第二章 IP协议详解2.1 IP服务的特点无状态:指IP通信双方不同步传输数据的状态信息,所有IP数据包的发送、传输和接受都是相互独立。只要接受端收到完整的IP数据包,就将数据部分上交给上层协议。(重新排序的工作交给上层协议)无连接:不长久地维持对方的任何信息不可靠:不能保证数据报能准确地到达接收端2.2 IPv4头部结构其中,16位总长度指整个IP数据包的长度,超过MTU(最大传输单元)的数据包都将被分片传输,所以实际传输的每个数据包都远没有达到最大值。32位源端IP地址与32位目的端

2022-01-03 19:25:20 1116

原创 Linux高性能服务器编程笔记(一)

前言:在前段时间为了学习网络编程,于是就看了《Linux高性能服务器编程》和《UNIX网络编程卷1:套接字联网API》的部分章节。在第一次看的时候感觉很懵,毕竟以前对网络的了解仅仅局限于七层协议和TCP/IP协议族的简单内容。在看完两本书的第一遍后,打算重新做一下《Linux高性能服务器编程》的笔记,于是又重新快速翻阅了一下。可能是因为已经对网络编程有初步的了解,在第二次的阅读中对很多第一次看的时候感觉迷糊的地方又有新的理解。看来经典的书还是的多翻几次,每次看都有新的理解。:)我并没有把所有章节都作为

2022-01-03 19:18:56 769

原创 每天五分钟玩转K8S(十一)

今天我们来了解一下k8s的网络,上网搜了一下,原来k8s的网络水非常深,书上的介绍只是冰山一角。如果有兴趣继续了解的话,需要翻阅其他的资料才行。可以看看这个,有介绍各种主流的cnihttps://www.sohu.com/a/304555150_618296一、k8s网络模型Kubernetes采用的是基于扁平地址空间的网络模型, 集群中的每个Pod都有自己的IP地址, Pod之间不需要配置NAT就能直接通信。 另外, 同一个Pod中的容器共享Pod的IP, 能够通过localhost通信。这种网络

2021-12-04 14:14:24 852

原创 每天五分钟玩转K8S(十)

今天我们来了解一下k8s的包管理工具,helm。一、helm的架构Helm有两个重要的概念: chart和release。chart是创建一个应用的信息集合, 包括各种Kubernetes对象的配置模板、 参数定义、 依赖关系、 文档说明等。 chart是应用部署的自包含逻辑单元。 可以将chart想象成apt、 yum中的软件安装包。release是chart的运行实例, 代表了一个正在运行的应用。 当chart被安装到Kubernetes集群, 就生成一个release。 chart能够多次安

2021-12-04 13:55:09 308

原创 每天五分钟玩转K8S(九)

今天来了解一下secret和configmap一、创建secret有四种方法创建secret:1.通过–from-literal:kubectl create secret generic mysecret --from-literal=username=admin --from-literal=password=123456每个–from-literal对应一个信息条目2.通过–from-file:echo -n admin > ./usernameecho -n 123456 &

2021-12-04 13:44:14 100

原创 每天五分钟玩转K8S(八)

今天我们来了解一下数据持久化的问题。一、volume本节我们讨论Kubernetes的存储模型Volume, 学习如何将各种持久化存储映射到容器。我们经常会说: 容器和Pod是短暂的。 其含义是它们的生命周期可能很短, 会被频繁地销毁和创建。 容器销毁时, 保存在容器内部 文件系统中的数据都会被清除。为了持久化保存容器的数据, 可以使用Kubernetes Volume。Volume的生命周期独立于容器, Pod中的容器可能被销毁和重建, 但Volume会被保留。本质上, Kubernet

2021-12-02 13:39:48 1890

原创 每天五分钟玩转K8S(七)

今天要了解的是k8s的health check(健康检查)的功能。一、默认的健康检查Kubernetes默认的健康检查机制: 每个容器启动时都会执行一个进程, 此进程由Dockerfile的CMD或ENTRYPOINT指定。 如果进程退出时返回码非零, 则认为容器发生故障, Kubernetes就会根据restartPolicy重启容器。先写出测试的yml文件:可以看到pod的状态,已经重启了好几次在上面的例子中, 容器进程返回值非零, Kubernetes则认为容器发生故障, 需要重启。 有

2021-12-02 10:17:41 871

原创 每天五分钟玩转K8S(六)

今天要了解的是k8s的rolling update(滚动更新)。一、了解一下滚动更新的操作先创建一个httpd:2.2.31的deployment,然后更新到2.2.32yml文件如下看到images的信息是2.2.31现在将yml文件改成2.2.32版本看到已经开始更新,特点是每次只更新替换一个pod,保证deployment的健壮性通过查询kubectl describe deployment httpd2可以完整地看到整个scale up/down过程(可以很清楚的看到数量

2021-12-02 10:07:50 377

原创 每天五分钟玩转K8S(五)

一、service的必要性对于k8s,pod不需要是robust的,因为可以通过controller来动态创建和销毁pod来保证应用整体的健壮性。由于每个pod都有自己的地址,所以当controller用新pod替代发生故障的pod时,新pod会分配新的ip地址。那么会导致ip地址发生变化,这时候就需要使用service来维护一个对外网络。Kubernetes Service从逻辑上代表了一组Pod, 具体是哪些Pod则是由label来挑选的。 Service有自己的IP, 而且这个IP是不变的。 客户

2021-12-01 15:11:37 1216

原创 每天五分钟玩转k8s(四)

接着上一篇讲到deployment,这一篇要介绍与deployment同一级别的其他任务DaemonSet与Job。一、DemonSetDaemonSet与Deployment的不同之处在于,每个node上最多只能运行一个副本DaemonSet的典型应用场景有:在集群的每个节点上运行存储Daemon, 比如glusterd或ceph。在每个节点上运行日志收集Daemon, 比如flunentd或logstash。在每个节点上运行监控Daemon, 比如Prometheus NodeExpor

2021-12-01 14:46:09 141

原创 每天五分钟玩转K8S(三)

接着上一篇介绍完k8s架构后,我们就开始学习k8s中的一个重要概念:deployment一、部署deploymentkubectl create deployment nginx-deployment --image=nginx:1.7.9 --replicas=2(最下面的events记录的是replicas的启动过程,证明了deployment可以通过replicas来管理pod)接着我们将使用kubectl describe replicaset查询replica的情况查询各个pod

2021-12-01 14:32:29 1822

原创 每天五分钟玩转K8S(二)

接着上一篇,在安装完k8s后,就要开始对他进行折腾了!!今天我们要做的就是对k8s的架构进行简单的学习(超级简单)。一、master节点k8s cluster由master和node组成,节点上运行着若干k8s服务。运行着的daemon服务包括 kube-apiserver、 kube-scheduler、 kube-controller-manager、 etcd和Pod网络(例如flannel)。如图其中的部件:API Server (kube-apiserver)API Serv

2021-12-01 14:05:27 410

原创 每天五分钟玩转K8S(一)

每天五分钟玩转k8s(一)

2021-12-01 13:48:41 816

提示
确定要删除当前文章?
取消 删除