首页 文章 精选 留言 我的

精选列表

搜索[动态节点],共10000篇文章
优秀的个人博客,低调大师

分布式架构实战--ActiveMQ的安装与使用(单节点)

具体内容请参考样例代码和视频教程: http://www.roncoo.com/course/view/85d6008fe77c4199b0cdd2885eaeee53 IP:192.168.4.101 环境:CentOS 6.6、JDK7 1、 安装JDK并配置环境变量(略) JAVA_HOME=/usr/local/java/jdk1.7.0_72 2、 下载Linux版的ActiveMQ(当前最新版apache-activemq-5.11.1-bin.tar.gz) $ wget http://apache.fayea.com/activemq/5.11.1/apache-activemq-5.11.1-bin.tar.gz 3、 解压安装 $ tar -zxvf apache-activemq-5.11.1-bin.tar.gz $ mv apache-activemq-5.11.1 activemq-01 如果启动脚本activemq没有可执行权限,此时则需要授权(此步可选) $ cd /home/wusc/activemq-01/bin/ $ chmod 755 ./activemq 4、 防火墙中打开对应的端口 ActiveMQ需要用到两个端口 一个是消息通讯的端口(默认为61616) 一个是管理控制台端口(默认为8161)可在conf/jetty.xml中修改,如下: <bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start"> <!-- the default port number for the web console --> <property name="host" value="0.0.0.0"/> <property name="port" value="8161"/> </bean> # vi /etc/sysconfig/iptables 添加: -A INPUT -m state --state NEW -m tcp -p tcp --dport 61616 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 8161 -j ACCEPT 重启防火墙: # service iptables restart 5、 启动 $ cd /home/wusc/activemq-01/bin $ ./activemq start 6、 打开管理界面:http://192.168.4.101:8161 默认用户名和密码为:admin/admin 登录后进入 7、 安全配置(消息安全) ActiveMQ如果不加入安全机制的话,任何人只要知道消息服务的具体地址(包括ip,端口,消息地址[队列或者主题地址],),都可以肆无忌惮的发送、接收消息。关于ActiveMQ安装配置http://activemq.apache.org/security.html ActiveMQ的消息安全配置策略有多种,我们以简单授权配置为例: 在conf/activemq.xml文件中在broker标签最后加入以下内容即可: $ vi /home/wusc/activemq-01/conf/activemq.xml <plugins> <simpleAuthenticationPlugin> <users> <authenticationUser username="wusc" password="wusc.123" groups="users,admins"/> </users> </simpleAuthenticationPlugin> </plugins> 定义了一个wusc用户,密码为wusc.123,角色为users,admins 设置admin的用户名和密码: $ vi /home/wusc/activemq-01/conf/jetty.xml <bean id="securityConstraint" class="org.eclipse.jetty.util.security.Constraint"> <property name="name" value="BASIC" /> <property name="roles" value="admin" /> <property name="authenticate" value="true" /> </bean> 确保authenticate的值为true(默认) 控制台的登录用户名密码保存在conf/jetty-realm.properties文件中,内容如下: $ vi /home/wusc/activemq-01/conf/jetty-realm.properties # Defines users that can access the web (console, demo, etc.) # username: password [,rolename ...] admin: wusc.123, admin 注意:用户名和密码的格式是 用户名 : 密码 ,角色名 重启: $ /home/wusc/activemq-01/bin/activemq restart 设置开机启动: # vi /etc/rc.local 加入以下内容 ## ActiveMQ su - wusc -c '/home/wusc/activemq-01/bin/activemq start' 8、 MQ消息生产者也与消息消费者的Demo样例讲解与演示 关注公众号:

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

Openstack 实战讲解之-----------02-控制节点kvm虚拟化配置

KVM虚拟化的特性 嵌入到linux正式kernel(提高了兼容性) 代码级资源调用(提高性能) 虚拟机就是一个进程(内存易于管理) 直接支持NUMA技术(提高扩展性) 虽然被RedHat收购了,但是依然保持开源发展模式,社区活跃 更好的商业支持及服务保障 CentOS7较CentOS6默认支持cpu热添加,内存热添加,大页内存默认都是开启的。 支持虚拟化的条件 Inter的cpu简称为:VMX AMD的cpu简称为:SVM VMware需要开启如下两个条件即可,如果是物理机,需要在bios里面设置,默认都是开启的。 通过下面的命令查看虚拟化信息: grep-E"svm|vmx"/proc/cpuinfo flags:fpuvmedepsetscmsrpaemcecx8apicsepmtrrpgemcacmovpatpse36clflushdtsmmxfxsrssesse2sssyscallnxrdtscplmconstant_tscarch_perfmonpebsbtsnoplxtopologytsc_reliablenonstop_tscaperfmperfeagerfpupnipclmulqdqvmxssse3cx16pcidsse4_1sse4_2x2apicpopcntaesxsaveavxf16crdrandhypervisorlahf_lmidaaratepbplnptsdthermtpr_shadowvnmieptvpidfsgsbasesmepxsaveopt flags:fpuvmedepsetscmsrpaemcecx8apicsepmtrrpgemcacmovpatpse36clflushdtsmmxfxsrssesse2sshtsyscallnxrdtscplmconstant_tscarch_perfmonpebsbtsnoplxtopologytsc_reliablenonstop_tscaperfmperfpnipclmulqdqvmxssse3cx16pcidsse4_1sse4_2x2apicpopcnttsc_deadline_timerxsavea*vxhypervisorlahf_lmaratepbplnptsdthermtpr_shadowvnmieptvpidtsc_adjust KVM的安装实战 安装管理工具和virt命令 1 yum install -yqemu-kvmlibvirtvirt- install 1 2 3 Kvm:linux内核的一个模块,模块不需要安装,只需要加载 Qemu:虚拟化软件,可以虚拟不同的cpu,支持异构(x86架构可虚拟化出不是x86的架构) Qemu-kvm:用户态管理kvm,网卡,声卡,PCI设备等都是qemu来管理的 创建虚拟磁盘 1 2 qemu-imgcreate-fraw /opt/Centos7_x86_64 .raw10G Formatting '/opt/Centos7_x86_64.raw' , fmt =rawsize=10737418240 创建qcow2格式的虚拟磁盘 1 2 qemu-imgcreate-fqcow2 /opt/Centos7_x86_64 .qcow210G Formatting '/opt/Centos7_x86_64.qcow2' , fmt =qcow2size=10737418240encryption=offcluster_size=65536lazy_refcounts=offrefcount_bits=16 转换虚拟磁盘格式: 1 qemu-imgconvert-c-fraw-Oqcow2CentOS-7-x86_64.rawCentOS-7-x86_64.qcow2 qcow2和raw的区别: 1.raw创建多大占用多大磁盘空间 2.qcow2占用磁盘大小根据使用量来决定 -> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [root@linux-node1~] #qemu-imginfo/opt/Centos7_x86_64.raw image: /opt/Centos7_x86_64 .raw file format :raw virtualsize:10G(10737418240bytes) disksize:0 [root@linux-node1~] #qemu-imginfo/opt/Centos7_x86_64.qcow2 image: /opt/Centos7_x86_64 .qcow2 file format :qcow2 virtualsize:10G(10737418240bytes) disksize:196K cluster_size:65536 Formatspecificinformation: compat:1.1 lazyrefcounts: false refcountbits:16 corrupt: false 显示内核中kvm的状态: 1 2 3 [root@linux-node1~] #lsmod|grepkvm kvm_intel1621530 kvm5252591kvm_intel 启动管理工具服务: 1 2 3 [root@linux-node1~] #systemctlenablelibvirtd [root@linux-node1~] #systemctlstartlibvirtd [root@linux-node1~] #systemctlstatuslibvirtd 上传镜像到node1机器中 1 2 3 4 5 6 7 8 9 10 11 12 13 [root@linux-node1~] #cd/opt/ [root@linux-node1opt] # wgethttp: //mirrors .aliyun.com /centos/7 .2.1511 /isos/x86_64/CentOS-7-x86_64-DVD-1511 .iso 法二: 利用CRT的SFTP上传 CRT==>File==>ConnectSFTPSession(英文版CRT) CRT==>文件==>连接到SFTP(中文版CRT) sftp > cd /opt sftp >putD: /ISO/CentOS-7-x86_64-DVD-1511 .iso #将镜像上传到/opt下 法三: [root@linux-node1~] #cd/opt/ [root@linux-node1opt] #ddif=/dev/cdromof=/opt/CentOS-7.1-x86_64.iso 创建虚拟机: 1 virt- install --virt- type kvm--nameCentos7.2_mini_x64-- ram 1024--cdrom= /tmp/CentOS-7-x86_64-Minimal-1611 .iso--diskpath= /opt/Centos7_x86_64 .qcow2--networknetwork=default--graphicsvnc,listen=0.0.0.0--noautoconsole 创建完毕的检查命令: 1 2 3 4 [root@linux-node1tmp] #virshlist--all IdNameState ---------------------------------------------------- 1Centos7.2_mini_x64running 虚拟机基本操作 生成kvm虚拟机:virt-install 查看再运行的虚拟机:virsh list 查看kvm虚拟机配置文件:virsh dumpxml name 启动kvm虚拟机:virsh start name 正常关机:virsh shutdown name 非正常关机:virsh destroy name 删除:virsh undefine name (彻底删除,无法找回,除非备份xml文件) 根据配置文件定义虚拟机:virsh define file-name.xml 挂起,终止:virsh suspend name 回复挂起状态:virsh resumed name 热添加CPU 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 [root@linux-node1opt] #cd/etc/libvirt/qemu/<-虚拟机xml路径-> [root@linux-node1qemu] #ll total4 -rw-------1rootroot3887Dec1111:19CentOS-7-x86_64.xml<-虚拟机xml文件-> 注:修改虚拟机xml文件不直接修改上文所述文件,要在用virsh管理命令修改 virsh #editCentOS-7-x86_64<-控制台内修改-> [root@linux-node1qemu] #virsheditCentOS-7-x86_64<-控制台外修改-> 注:热添加的CPU数不能超过最大值 [root@linux-node1qemu] #virsheditCentOS-7-x86_64<-编辑配置文件-> <vcpuplacement= 'static' >1< /vcpu ><-修改此行内容-> <vcpuplacement= 'auto' current= "1" >4< /vcpu ><-当前为1自动扩容最大为4-> [root@linux-node1~] #virshshutdownCentOS-7-x86_64<-关闭虚拟机-> DomainCentOS-7-x86_64isbeing shutdown [root@linux-node1~] #virshstartCentOS-7-x86_64<-开启虚拟机-> DomainCentOS-7-x86_64started 没有热添加cpu之前先查看cpu的个数 1 2 3 virshsetvcpusCentOS-7-x86_642--live <- 热添加CPU-> 添加完cpu后,查看cpu个数: l激活cpu 1 2 3 4 5 6 7 8 9 [root@linux-node1~] #echo"1">/sys/devices/system/cpu/cpu1/online 高版本的kvm不需要这样做,直接可以激活 [root@linux-node1~] #cat/sys/devices/system/cpu/cpu0/online 1 [root@linux-node1~] #cat/sys/devices/system/cpu/cpu1/online 1 第二种添加cpu的方法:安装时指定 [root@linux-node1~] #virt-install–vcpus5–vcpus5,maxcpus=10,cpuset=1-4,6,8–vcpussockets=2,cores=4,thread=2 更改kvm内存配置 内存的设置拥有一个“气球(balloon)机制”,可以增大减少,但是也要设置一个最大值,默认并没有设置最大值,也可以在安装的时候指定 1 2 3 4 5 [root@linux-node1~] #virsheditCentOS-7-x86_64<-编辑配置文件-> <memoryunit= 'KiB' >4194304< /memory ><-最大内存:4G-> <currentMemoryunit= 'KiB' >1048576< /currentMemory ><-当前内存:1G-> [root@linux-node1~] #virshqemu-monitor-commandCentOS-7-x86_64--hmp--cmdinfoballoon<-查看当前内存-> [root@linux-node1~] #virshqemu-monitor-commandCentOS-7-x86_64--hmp--cmdballoon512<-修改内存:512-> 4.8更改虚拟机网桥连接设置 默认情况下是NAT,但是在生产环境,使用的更多的是桥接模式,更改虚拟机为网桥模式 网桥的基本原理就是创建一个桥接接口br0,在屋里网卡和虚拟网络接口之间传递数据。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 [root@linux-node1~] #brctladdbrbr0<-添加网桥br0-> [root@linux-node1~] #brctladdifbr0eth0<-桥接br0和eth0-> 注:此时会断网如果是远程操作服务器不在身边,建议写成脚本来执行 [root@linux-node1~] #ipaddrdeldeveth0192.168.56.11/24<-删除eth0的IP-> [root@linux-node1~] #ifconfigbr0192.168.56.11/24up<-给br0设置IP-> [root@linux-node1~] #routeadddefaultgw192.168.56.2<-给br0设置网关-> 为了避免断网,直接写成脚本即可: #!/bin/bash brctladdbrbr0 brctladdifbr0eth0 ipaddrdeldeveth0192.168.56.11 /24 ifconfig br0192.168.56.11 /24 up routeadddefaultgw192.168.56.2 [root@linux-node1~] #virsheditCentOS-7-x86_64<-修改虚拟机配置-> 将: <interfacetype= 'network' <-虚拟机网络连接方式-> <macaddress= '52:54:00:0b:f8:a5' /> < source network= 'default' /><-当前主机网络名称-> 修改为: <interfacetype= 'bridge' > <macaddress= '52:54:00:0b:f8:a5' /> < source bridge= 'br0' /> [root@linux-node1~] #virshshutdownCentOS-7-x86_64<-关闭虚拟机-> DomainCentOS-7-x86_64isbeing shutdown [root@linux-node1~] #virshstartCentOS-7-x86_64<-启动虚拟机-> DomainCentOS-7-x86_64started [root@linux-node1~] #ifconfig<-查看网卡信息-> br0:flags=4163<UP,BROADCAST,RUNNING,MULTICAST>mtu1500 inet192.168.56.11netmask255.255.255.0broadcast192.168.56.255 inet6fe80::20c:29ff:fefe:1620prefixlen64scopeid0x20<link> ether00:0c:29:fe:16:20txqueuelen0(Ethernet) RXpackets74bytes8909(8.7KiB) RXerrors0dropped0overruns0frame0 TXpackets63bytes11462(11.1KiB) TXerrors0dropped0overruns0carrier0collisions0 eth0:flags=4163<UP,BROADCAST,RUNNING,MULTICAST>mtu1500 inet6fe80::20c:29ff:fefe:1620prefixlen64scopeid0x20<link> ether00:0c:29:fe:16:20txqueuelen1000(Ethernet) RXpackets26401bytes26066467(24.8MiB) RXerrors0dropped0overruns0frame0 TXpackets8582bytes1939240(1.8MiB) TXerrors0dropped0overruns0carrier0collisions0 lo:flags=73<UP,LOOPBACK,RUNNING>mtu65536 inet127.0.0.1netmask255.0.0.0 inet6::1prefixlen128scopeid0x10<host> looptxqueuelen0(LocalLoopback) RXpackets4bytes216(216.0B) RXerrors0dropped0overruns0frame0 TXpackets4bytes216(216.0B) TXerrors0dropped0overruns0carrier0collisions0 virbr0:flags=4099<UP,BROADCAST,MULTICAST>mtu1500 inet192.168.122.1netmask255.255.255.0broadcast192.168.122.255 ether00:00:00:00:00:00txqueuelen0(Ethernet) RXpackets0bytes0(0.0B) RXerrors0dropped0overruns0frame0 TXpackets2bytes84(84.0B) TXerrors0dropped0overruns0carrier0collisions0 vnet0:flags=4163<UP,BROADCAST,RUNNING,MULTICAST>mtu1500 etherfe:54:00:0b:f8:a5txqueuelen500(Ethernet) RXpackets0bytes0(0.0B) RXerrors0dropped0overruns0frame0 TXpackets0bytes0(0.0B) TXerrors0dropped0overruns0carrier0collisions0 本文转自 kesungang 51CTO博客,原文链接:http://blog.51cto.com/sgk2011/1886277,如需转载请自行联系原作者

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

shell脚本监控Linux系统节点和服务CPU内存性能

1、获取信息 #!/bin/bash #描述: # 把top信息输入到一个文件内部 #作者:孤舟点点 #版本:1.0 #创建时间:2017-11-09 03:04:28 PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH p=`pwd` Day=`date +"%Y%m%d"` HOST=`hostname` for((i=0; i<1440; i=i+1)) do echo "Date `date +"%Y-%m-%d %H:%M:%S"`" >>$p/$Day-top.txt top c -bn1 >>$p/$Day-top.txt sleep 1 done 2、筛选信息 #!/bin/bash #描述: #作者:孤舟点点 #版本:1.0 #创建时间:2017-11-09 04:08:52 PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH p=`pwd` Day=`date +"%Y%m%d"` HOST=`hostname` mkdir -p $p/$HOST-$Day PT=$p/$HOST-$Day cd $PT cat $p/$1 | grep -v grep | grep "^Date" >> $PT/Time-$Day.txt cat $p/$1 | grep -v grep | grep "^Cpu(s):" >> $PT/CPU-$Day.txt cat $p/$1 | grep -v grep | grep "^Mem:" >> $PT/Mem-$Day.txt cat $p/$1 | grep -v grep | grep "^Swap:" >> $PT/Cache-$Day.txt while read line do cat $p/$1 | grep -v grep | grep "$line" >> $PT/$line-$Day.txt done < $p/service.txt # 这里service.txt是按行存放的服务名称 cd $p 3、整理数据 例如用Excel整理内存使用情况,这里把获取的时间和内存信息放在Excel内部,并把内存列用Excel分列,用时间和使用的内存大小列可以制作出一张内存使用趋势图;同理也可以制作CPU、cached及各个微服务的CPU和内存趋势图。

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

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应用均可从中受益。

WebStorm

WebStorm

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

用户登录
用户注册