首页 文章 精选 留言 我的

精选列表

搜索[快速入门],共10000篇文章
优秀的个人博客,低调大师

openstack M 版 neutron网络组件基础入门

在我们openstack学习当中,网络组件neutron无疑是令很多人很难理解的,可以说要深入理解 了neutron组件,你基本完成了openstack 60%的学习,存储方面只要不涉及到分布式,剩下的基本都比较简单了 相信很多人第一次看到这种图的时候都会被吓一跳,没错,这就是openstack neutron组件里面涉及到的数据流程,里面涉及到的知识点很多很多 Openstack网络模型中的几个概念网络: ManagementNetwork:管理网络,连接所有节点。 ExternalNetwork:外部网络,虚拟机通过此接口连通外部网络 DataNetwork:虚拟机网络,提供之间内部数据线通讯的网络. 这里搭建过程略过,可以参考之前写的L版本的搭建过程,这次环境如下,一个控制节点和一个计算节点 上面是控制节点,三张网卡 eno1777736 10.10.80.133 作为外部网络 eno33554960 10.10.10.130 作为管理网络 eno50332184 作为虚拟机网络 支持的网络类型有 flat vlan vxlan gre 而具体实现的这些的则有Linux bridge 和openvswitch 这里我们以Linux bridge 来实现flat网络为例来说明,其他基本差不多,更多内容可以参阅官方文档,这里有趣的是在最新版本 N ,官方已经提供了 ansible来部署openstack的指导说明 Flat网络,顾名思义是平面网络,要求宿主机的物理网卡直接与Linux bridge连接,,每个flat network都会独占一个物理网卡,关键参数配置如下 [root@controller~]#vim/etc/neutron/plugins/ml2/ml2_conf.ini tenant_network_types=flat [ml2_type_flat] flat_networks=martin_flat#这个名字自定义 [root@controller~]#vim/etc/neutron/plugins/ml2/linuxbridge_agent.ini physical_interface_mappings=martin_flat:eno50332184#名字保持与上面一样,后面是flat网卡名称 我们打开dashboard来创建第一个flat网络 接下来观察这些操作在服务器上面引起了什么变化 接下来我们来创建第一台虚拟机并关联到flat网络 观察计算节点的变化情况 dhcp功能 Neutron提供dhcp服务的组件是dhcp agent ,在网络节点上面运行,默认是通过dnsmasq是实现dhcp功能 配置文件在 [root@controller ~]# vim /etc/neutron/dhcp_agent.ini interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver ns-26782a82-61和tap26782a82-61是一对veth pair,他们将9225f654-522b-478e-80bc-06bf2948cd08 连接到网桥 brq9225f654-52上面 以上这些都只是openstack neutron网络组件最基本的东西,里面的内容实在是太多了,涉及到的知识点也很多 如 liunx bridge tap设备 虚拟对 namespace openvswitch 虚拟交换机 虚拟路由器 iptables 高可用 dvr 等等,包括我自己还有很多的东西需要学习,但是大家无需害怕,就从最简单的学习起,学会了一个,其他你照着模仿应该也能学会 最后给大家看一下 通过openvswith构建的vxlan网络时,两个虚拟机通讯的流程,有兴趣的可以自己深入一下 openvswitch流表结构

优秀的个人博客,低调大师

LOGSTASH再入门第一发

慢慢弄起来。。。 前年搞过,现在生疏了,再慢慢拾起来吧。 一些URL: https://www.elastic.co/downloads/logstash https://www.elastic.co/products/kibana http://kafka.apache.org/ https://www.elastic.co/products/elasticsearch https://www.gitbook.com/book/chenryn/kibana-guide-cn/details http://pan.baidu.com/share/link?uk=2267823173&shareid=2710953066&third=0 http://www.logstashbook.com/ 参考PDF: The LogStash Book - Turnbull, James.pdf

优秀的个人博客,低调大师

阿里云ECS Docker Machine Driver入门指南

+++title = "Aliyun Elastic Compute Service"description = "Aliyun driver for machine"keywords = ["machine, aliyun, driver, ecs"][menu.main]parent="smn_machine_drivers"+++ Docker Machine Driver of Aliyun ECS Docker技术目前在无论在社区还是在企业应用中,都有很强烈的反响。为了使得用户可以在阿里云ECS上体验和使用Docker技术,我们开发了相应的Docker Machine驱动。在创建machine之前,首先需要有一对阿里云的安全秘钥以及对应的Region信息。如果想创建VPC网络,还需要有VPC ID和VSwitch ID。相关

优秀的个人博客,低调大师

web开发快餐式入门指南 1.1 http

由于web应用大多数都在浏览器中进行操作,所以我们有必要先了解一下浏览器里面到底发生了什么。简而言之,当你在浏览器的地址栏中输入网址并按下回车,或者点击了网页上的某个链接时,浏览器就会按照网址给目标服务器发送请求。浏览器和服务器之间的请求遵循http协议,协议规定了所使用的格式,只有按照这种格式组织的数据才能相互识别。 具体来讲,浏览器先根据url中的主机部分通过dns查询出ip地址,然后组装http报文,发送给这个ip。服务器接到请求后便会处理,然后也会组装一个报文,把结果放入其中发给浏览器。浏览器根据html或js中写好的逻辑,以刷新页面或者弹出消息框等方式和用户交互。这一来一回才算结束。 格式 我们可以用浏览器的开发者工具,或者其它抓包软件进行抓包,从而看到背后的http请求是什么。比如访问www.baidu.com,则有可能会看到这样的报文: GET / HTTP/1.1 Host: www.baidu.com Connection: keep-alive Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.116 Safari/537.36 Accept-Encoding: gzip, deflate, sdch Accept-Language: zh-CN,zh;q=0.8 Cookie: ... HTTP/1.1 200 OK Server: bfe/1.0.8.14 Date: Tue, 23 Feb 2016 12:43:08 GMT Content-Type: text/html;charset=utf-8 Transfer-Encoding: chunked Connection: keep-alive Cache-Control: private Expires: Tue, 23 Feb 2016 12:43:08 GMT Content-Encoding: gzip X-UA-Compatible: IE=Edge,chrome=1 BDPAGETYPE: 2 BDQID: 0xd678b56500003dd4 BDUSERID: 18401 Set-Cookie: ... ... 可以看到,上半部分是请求(request)的报文,下半部分是响应(response)的报文。请求和响应的报文都由三部分组成:状态行、消息头(header)和消息体(body)。其中状态行在请求或者响应中,分别叫做请求行和响应行,消息头在请求或者响应中也分别叫做请求头和响应头,消息体也叫正文,是可选的。 请求报文 我们先看请求报文,第一行GET / HTTP/1.1就是请求行,其中GET是方法,/是路径,HTTP/1.1是所使用的HTTP版本。 之后几行以:分割的文本是请求头,请求头的种类很多,其中还有不少自定义的请求头,但是上面列出的都是常见的请求头,我们只需要了解它们。 Host是所请求的域名,由于现在大量虚拟主机和云主机的存在,一个ip的主机上往往有很多个网站,所以要加上Host请求头,不能简单以ip来定位。 Accept是浏览器接受的格式,我们可以看到有html、xhtml和xml。 User-Agent是浏览器的类型,也包含浏览器内核类型和操作系统类型。由于用户可以任意改动请求头,它不一定是可信的。 Accept-Encoding是浏览器接受的编码,我们可以看出浏览器启用了gzip压缩。 Accept-Language是浏览器接受的语言。 Cookie是用户标识用户的数据,由服务端程序生成,储存在浏览器中,每次浏览器访问一个网站,都要带上已有的Cookie。 上面的报文中,由于是GET方法,没有消息体。 消息体如果存在,和消息头以两个换行\n\n分隔。如果有消息体的话,请求头中还要加上两种。一个是Content-Length,是消息体的长度。还有一个是Content-Type,是消息体的格式,这个参数很重要,因为大多数框架都自动解析消息体,如果错了的话就会解析失败。 响应报文 同理,响应报文的第一行HTTP/1.1 200 OK是响应行,HTTP/1.1是版本,200是状态码,OK是状态文本。响应头和请求头的格式一样,但内容有所不同。而且,服务器设置Cookie所用的响应头是Set-Cookie而不是Cookie。 上面的响应报文是带消息体的,同样和响应头以\n\n分隔。 方法 接下来要讲一下HTTP的方法。 HTTP的方法有很多种,但是如果你打开抓包软件记录你一天的浏览历史的话,你会发现99%都是GET或者POST,其中GET占大多数。一般情况下,我们只会用到这两种方法,GET常用于资源的获取,比如页面显示,POST则用于动作的提交,比如删除、新增、修改某种资源。 GET和POST都可以带参数,只不过参数在报文中的位置不同。GET方法中的参数出现在路径中,以?分割,比如/path/to/page?k1=v1&k2=v2。而且你也发现了,这种位置上只能写成键值对形式。HTTP协议中并没有对参数的长度进行限制,但由于GET参数是写在url中的,在浏览器以及服务器中会有限制,比如Chome中限制url长度不超过8182字节。 POST的参数在消息体中,长度任意。而且格式任意,比如可以使用json和xml,只要把Content-Type配置对了,让服务器能够正常识别就好。服务器可以限制消息体的长度,但也可以通过配置来取消。

资源下载

更多资源
Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册