varnish是一款高性能、开源的反向代理服务器和缓存服务器。Varnish使用内存缓存文件来减少响应时间和网络带宽消耗。

VCL处理流程图

处理过程大致分为如下几个步骤:
(1)Receive 状态,也就是请求处理的入口状态,根据 VCL 规则判断该请求应该是 Pass 或
Pipe,或者进入 Lookup(本地查询)。
(2)Lookup 状态,进入此状态后,会在 hash 表中查找数据,若找到,则进入 Hit 状态,否则进
入 miss 状态。
(3)Pass 状态,在此状态下,会进入后端请求,即进入 fetch 状态。
(4)Fetch 状态,在 Fetch 状态下,对请求进行后端的获取,发送请求,获得数据,并进行本地
的存储。
(5)Deliver 状态, 将获取到的数据发送给客户端,然后完成本次请求。

varnish 服务配置

基础环境配置之封装虚拟机

1、封装虚拟机,配置三台

主机环境: rhel6 selinux and iptables disabled
两台作为后端服务器
apache——172.25.54.x server2
apache——172.25.54.y server3
一台作为varnish缓存服务器
varnish ——172.25.54.z server1
主机为客户端clients : 172.25.54.250
注 : 此处操作系统为 rhel6.5

2、安装虚拟机(作为母盘)

6.5版本镜像下载链接
注意:在安装虚拟机前,在真机配置好DHCP,以便新建虚拟机存在IP










重启后的操作

[root@localhost ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host loinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether 52:54:00:58:16:d2 brd ff:ff:ff:ff:ff:ffinet 172.25.54.3/24 brd 172.25.54.255 scope global eth0inet6 fe80::5054:ff:fe58:16d2/64 scope link valid_lft forever preferred_lft forever
[root@localhost ~]# hostname server
##临时修改主机名称
[root@localhost ~]# hostname
server
[root@localhost ~]# vi /etc/sysconfig/network
[root@localhost ~]# cat /etc/sysconfig/network
##永久修改主机名称
NETWORKING=yes
HOSTNAME=server
[root@localhost ~]# vi /etc/hosts
##添加后四行内容
[root@localhost ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
172.25.54.1 server1
172.25.54.2 server2
172.25.54.3 server3
172.25.54.4 server4
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO="dhcp"
[root@localhost ~]# ls /etc/udev/rules.d/ ##删除目录/etc/udev/rules.d/下的内容,只留下文件60-raw.rules
60-raw.rules
[root@localhost ~]# vi /etc/yum.repos.d/rhel-source.repo
[root@localhost ~]# cat /etc/yum.repos.d/rhel-source.repo
[rhel-source]
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=http://172.25.54.250/rhel6.5
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[root@localhost ~]# yum clean all
Loaded plugins: product-id, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Cleaning repos: rhel-source
Cleaning up Everything
[root@localhost ~]# yum repolist
Loaded plugins: product-id, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
rhel-source                                              | 3.9 kB     00:00
rhel-source/primary_db                                   | 3.1 MB     00:00
repo id          repo name                                                status
rhel-source      Red Hat Enterprise Linux 6Server - x86_64 - Source       3,690
repolist: 3,690
[root@localhost ~]# yum install vim lftp -y
[root@localhost ~]# vim /etc/sysconfig/selinux
[root@localhost ~]# cat /etc/sysconfig/selinux
7 SELINUX=disabled  ##修改selinux的值为disabled
[root@localhost ~]# chkconfig iptables off
[root@localhost ~]# /etc/init.d/iptables stop
##这两条命令是关闭防火墙
[root@localhost ~]# poweroff
##做完上述操作过后,关闭该虚拟机

注意:母盘关机后,不能再次打开,再次打开会导致母盘损坏

3、虚拟机(子镜像)的安装

kvm —> cpu/mem 对cpu和内存的虚拟化
qemu —> disk/net…. 对磁盘 网卡….的虚拟化
libvirtd —-> user 和 kernel 之间的操作接口
virt-manager —–> 虚拟机管理
virsh —–> 虚拟机管理

首先对母盘做以下处理

[root@foundation54 ~]# cd /var/lib/libvirt/images/
[root@foundation54 images]# ll
total 1948488
-rw------- 1 root root 21478375424 Jul 28 11:03 tutu.qcow2
[root@foundation54 images]# du -h tutu.qcow2
1.9G    tutu.qcow2
[root@foundation54 images]# ls
tutu.qcow2
[root@foundation54 images]# virt-
virt-admin           virt-format          virt-resize
virt-alignment-scan  virt-get-kernel      virt-sparsify
virt-builder         virt-host-validate   virt-sysprep
virt-cat             virt-index-validate  virt-tar-in
virt-clone           virt-inspector       virt-tar-out
virt-copy-in         virt-install         virt-top
virt-copy-out        virt-log             virt-viewer
virt-customize       virt-ls              virt-what
virt-df              virt-make-fs         virt-who
virt-diff            virt-manager         virt-who-password
virt-edit            virt-pki-validate    virt-xml
virt-filesystems     virt-rescue          virt-xml-validate
[root@foundation54 images]# virt-sysprep -d tutu
[root@foundation54 images]# virt-manager

[root@foundation54 images]# pwd
/var/lib/libvirt/images
[root@foundation54 images]# ls
tutu.qcow2
[root@foundation54 images]#

注意:若命令 virt-sysprep 不存在,便执行下列操作,执行后,该命令便存在啦~

[root@foundation54 ~]# yum provides */virt-sysprep
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-: manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
1:libguestfs-tools-c-1.32.7-3.el7.x86_64 : System administration tools for: virtual machines
Repo        : rhel7.3
Matched from:
Filename    : /usr/bin/virt-sysprep
[root@foundation54 ~]# yum install libguestfs-tools-c-1.32.7-3.el7.x86_64 -y

安装

[root@foundation54 images]# pwd
/var/lib/libvirt/images
[root@foundation54 images]# ls
tutu.qcow2
[root@foundation54 images]# qemu-img create -f qcow2 -b tutu.qcow2 test1
Formatting 'test1', fmt=qcow2 size=21474836480 backing_file='tutu.qcow2' encryption=off cluster_size=65536 lazy_refcounts=off
[root@foundation54 images]# ls
test1  tutu.qcow2
[root@foundation54 images]# ll test1
-rw-r--r-- 1 root root 197120 Jul 28 11:28 test1
[root@foundation54 images]# du -h test1
196K    test1
[root@foundation54 images]# virt-manager

[root@foundation54 images]# du -h test1
4.6M    test1
[root@foundation54 images]# du -h tutu.qcow2
1.9G    tutu.qcow2
[root@foundation54 images]#

虚拟机(子镜像)的所有操作均不改变虚拟机母盘
按照此方法继续安装虚拟机test2、test3
varnish ——172.25.54.5 server1(虚拟机test1)
apache——172.25.54.6 server2(虚拟机test2)
apache——172.25.54.7 server3(虚拟机test3)

varnish介绍以及虚拟机的封装相关推荐

  1. 6.5版本虚拟机的封装

    一.虚拟机的封装 1.使6.5镜像共享 <1> 首先我们需要一个6.5版本的镜像 <2> 为了后面的快照能够使用6.5的yum源,我们将6.5版本的虚拟机挂载到共享目录,并设置 ...

  2. 企业入门实战(一)基于Redhat7.6环境虚拟机的封装

    基于Redhat7.6环境虚拟机的封装 一.镜像![在这里插入图片描述](https://img-blog.csdnimg.cn/20210624091212928.png) 二.虚拟机相关配置的修改 ...

  3. Android 网络框架 Retrofit2.0介绍、使用和封装

    前言 时至今日,Android的网络框架不再像之前那么到处都是,随着Google把 HttpClient直接删掉,似乎意味着Android越来越成熟.网络框架中的佼佼者Volley也不再那么光鲜,取而 ...

  4. rhel7虚拟机的封装

    文章目录 1.服务器初始化 2.禁用selinux 3.禁用防火墙 4.配置yum源 5.配置网络 6.时间同步 7.主机名解析 8.关闭NetworkManager 9.完成封装 1.服务器初始化 ...

  5. 最简单直白的Linux入门介绍+VMware虚拟机搭建服务器

    前言 一年前的现在,我知道了有Linux这个东西.当时是社团的一个大神师兄给我们做了培训,花了两个晚上,100+页的PPT,可惜当时课上能听进去的人太少了,我最终也只是熟悉了这个环境,但并没有什么深刻 ...

  6. sysprep封装win7不用虚拟机_Win7封装经验总结

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 网上封装WIN7的教程一大堆,过程非常详细,但是经验总结寥寥无几,封装时多多少少都会碰到一些问题, 如果一个个再上网去查找答案,势必会耗费很多时间,下面我 ...

  7. Java Hutool 介绍 hutool 工具包 模块 封装 工具

    1.简介 Hutool文档 (很重要) Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以&q ...

  8. 简书 java jvm_详细介绍Java虚拟机(JVM)

    1. JVM生命周期 启动.启动一个Java程序时,一个JVM实例就产生了,任何一个拥有public static void main(String[] args)函数的class都可以作为JVM实例 ...

  9. Linux网络编程 | Socket编程(一):Socket的介绍、UDPSocket的封装、UDP服务器/客户端的实现

    目录 套接字编程 Sockaddr结构 字节序 地址转换 常用套接字接口 UDP的通信流程 UDPSocket的封装 UDP服务器 UDP客户端 套接字编程 所谓套接字(Socket),就是对网络中不 ...

最新文章

  1. Cisco asa 5510升级IOS和ASDM
  2. javascript-XMLHttpRequest
  3. python函数使用易错点_大部分人都会忽略的Python易错点总结
  4. 80%的Android手机用户面临浏览器安全风险
  5. 2020 云原生技术 7 大领域趋势全预测
  6. 【机器学习】机器学习中缺失值处理方法大全(附代码)
  7. oracle 0 函数吗,Oracle9.2.0.1版函数编译一个小问题
  8. java cpu 占用高问题定位
  9. mouted vue 操作dom_vue中使用refs定位dom的坑-阿里云开发者社区
  10. Difference: throw or throw ex?
  11. 基于React的全屏滑动插件react-fullslip
  12. 计算机搜索文件时找不到搜索按钮,电脑搜不到文件怎么办?文件搜索软件用起来!...
  13. cacti监控服务器
  14. go开发属于自己的日志库-日志库易用性封装
  15. AIDL中should be declared in a file错误
  16. android 指纹拍照,一加2评测:增加指纹识别/拍照性能出众
  17. 【实践*感悟】程序员的品质
  18. 公众号头条文章数据接口 API
  19. python使用spark_如何在Python中编写简单代码,并且速度超越Spark?
  20. 思科EVE模拟器开机几个要点

热门文章

  1. 【转载】ABAP 字符串 ‘‘ || `` 区别
  2. MD04读取的一些计算表
  3. 释疑の舍入参数文件介绍
  4. MM定价计算方案确定详细图解
  5. 男篮球员特点 里约惨案就是这样造成的
  6. Dynpro F4的实现测试
  7. 会计记忆总结之七:财产清查
  8. 当ABAP遇到OLE
  9. 全球最难翻译的十大单词
  10. SAP中smartforms参数