首页 文章 精选 留言 我的

精选列表

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

Linux集群架构介绍

▎根据功能划分为两大类: 高可用 负载均衡 高可用 高可用集群通常为两台服务器,一台工作,另外一台作为冗余,当提供服务的机器宕机,冗余将接替继续提供服务。 实现高可用的开源软件有:heartbeat、keepalived等,其中heartbeat这款软件在CentOs6上面的bug略多,假如主服务器宕机,备用服务器不可以在短时间正常切换提供服务,而且长时间没有更新,所以不建议使用。 负载均衡 负载均衡集群,需要有一台服务器作为分发器,它负责把用户的请求分发给后端的服务器处理,在这个集群里,除了分发器外,就是给用户提供服务的服务器了,这些服务器数量至少为2台。 实现负载均衡的开源软件有LVS、keepalived、haproxy、nginx,商业的有F5、Netscaler,商业的价格比较昂贵,优点:高并发量支持,稳定性不错,如果使用开源的软件去搭建,其稳定性在于设备, keepalived通过VRRP(Virtual Router Redundancy Protocl)来实现高可用。 在这个协议里会将多台功能相同的路由器组成一个小组,这个小组里会有1个master角色和N(N>=1)个backup角色。 master会通过组播的形式向各个backup发送VRRP协议的数据包,当backup收不到master发来的VRRP数据包时,就会认为master宕机了。此时就需要根据各个backup的优先级来决定谁成为新的mater。 Keepalived要有三个模块,分别是core、check和vrrp。其中core模块为keepalived的核心,负责主进程的启动、维护以及全局配置文件的加载和解析,check模块负责健康检查,vrrp模块是来实现VRRP协议的。 本文转自Grodd51CTO博客,原文链接:http://blog.51cto.com/juispan/1963995 ,如需转载请自行联系原作者

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

Linux 基础 - 磁盘管理 -02

前面写了“磁盘”位于整个计算机体系架构的什么位置, 并且也了解到了“硬盘”与 “总线”的连接接口, 分为很多类型,具体有“串行”和 “并行”两大类。 总体而言,串行的速度,要比并行的快很多。 但是,接口速度,并不能对数据读写速度起到决定性作用, 还得看硬盘本身的速度,所以又提到了硬盘的类型 - 机械硬盘和固态硬盘。 接下来,我们看下“机械硬盘的工作原理”,主要目的是为了更好的理解 -磁盘 -盘片 -磁道 -磁头 -扇区 -柱面 -分区 等基本概念,以及它们之间的关系。为后面的“文件系统管理”做铺垫!(基础最重要~) 本文转自Mr2Left 51CTO博客,原文链接:http://blog.51cto.com/caihong/1980924

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

Linux ssh免密钥认证

hadoop和ansible都需要这个东西,其实很简单。 第一,在需要免秘钥登录的机器上生成公钥和私钥: 1 ssh -keygen 第二,拷贝生成的公钥id_rsa.pub到远程机器上: 1 ssh -copy- id -i /root/ . ssh /id_rsa .pubroot@192.168.0.247 #用此方式拷贝的好处是不用改名 这时再登录192.168.0.247的机器就无需密码了。 1 2 3 [root@zabbix_server~] #ssh192.168.0.247 Lastlogin:MonNov2813:48:332016from192.168.0.3 [root@localhost~] # 如果是普通账号免登录则需先切换普通账号,然后再生成公钥和私钥。 本文转自 王家东哥 51CTO博客,原文链接:http://blog.51cto.com/xiaodongge/1877339

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

linux下安装hadoop步骤

下面的安装手册是我在hadoop第一版时做的,和现在的hadoop不太符合 一、前期准备: 下载hadoop: http://hadoop.apache.org/core/releases.html http://hadoop.apache.org/common/releases.html http://www.apache.org/dyn/closer.cgi/hadoop/core/ http://labs.xiaonei.com/apache-mirror/hadoop/core/hadoop-0.20.1/hadoop-0.20.1.tar.gz http://labs.xiaonei.com/apache-mirror/hadoop/ 二、硬件环境 共有3台机器,均使用的CentOS,Java使用的是jdk1.6.0。 三、安装JAVA6 sudo apt-get install sun-java6-jdk /etc/environment 打开之后加入:#中间是以英文的冒号隔开,记得windows中是以英文的分号做为分隔的 CLASSPATH=.:/usr/local/java/lib JAVA_HOME=/usr/local/java 三、配置host表 [root@hadoop ~]# vi /etc/hosts 127.0.0.1 localhost 192.168.13.100 namenode 192.168.13.108 datanode1 192.168.13.110 datanode2 [root@test ~]# vi /etc/hosts 127.0.0.1 localhost 192.168.13.100 namenode 192.168.13.108 datanode1 [root@test2 ~]# vi /etc/host 127.0.0.1 localhost 192.168.13.100 namenode 192.168.13.110 datanode2 添加用户和用户组 addgroup hadoop adduser hadoop usermod -a -G hadoop hadoop passwd hadoop 配置ssh: 服务端: su hadoop ssh-keygen -t rsa cp id_rsa.pub authorized_keys 客户端 chmod 700 /home/hadoop chmod 755 /home/hadoop/.ssh su hadoop cd /home mkdir .ssh 服务端: chmod 644 /home/hadoop/.ssh/authorized_keys scp authorized_keys datanode1:/home/hadoop/.ssh/ scp authorized_keys datanode2:/home/hadoop/.ssh/ ssh datanode1 ssh datanode2 如果ssh配置好了就会出现以下提示信息 The authenticity of host [dbrg-2] can't be established. Key fingerpr is 1024 5f:a0:0b:65:d3:82:df:ab:44:62:6d:98:9c:fe:e9:52. Are you sure you want to continue connecting (yes/no)? OpenSSH告诉你它不知道这台主机但是你不用担心这个问题你是第次登录这台主机键入“yes”这将把 这台主机“识别标记”加到“~/.ssh/know_hosts”文件中第 2次访问这台主机时候就不会再显示这条提示信 不过别忘了测试本机ssh dbrg-1 mkdir /home/hadoop/HadoopInstall tar -zxvf hadoop-0.20.1.tar.gz -C /home/hadoop/HadoopInstall/ cd /home/hadoop/HadoopInstall/ ln -s hadoop-0.20.1 hadoop export JAVA_HOME=/usr/local/java export CLASSPATH=.:/usr/local/java/lib export HADOOP_HOME=/home/hadoop/HadoopInstall/hadoop export HADOOP_CONF_DIR=/home/hadoop/hadoop-conf export PATH=$HADOOP_HOME/bin:$PATH cd $HADOOP_HOME/conf/ mkdir /home/hadoop/hadoop-conf cp hadoop-env.sh core-site.xml hdfs-site.xml mapred-site.xml masters slaves /home/hadoop/hadoop-conf vi $HADOOP_HOME/hadoop-conf/hadoop-env.sh # The java implementation to use. Required. --修改成你自己jdk安装的目录 export JAVA_HOME=/usr/local/java export HADOOP_CLASSPATH=.:/usr/local/java/lib # The maximum amount of heap to use, in MB. Default is 1000.--根据你的内存大小调整 export HADOOP_HEAPSIZE=200 vi /home/hadoop/.bashrc export JAVA_HOME=/usr/local/java export CLASSPATH=.:/usr/local/java/lib export HADOOP_HOME=/home/hadoop/HadoopInstall/hadoop export HADOOP_CONF_DIR=/home/hadoop/hadoop-conf export PATH=$HADOOP_HOME/bin:$PATH 配置 namenode #vi $HADOOP_CONF_DIR/slaves 192.168.13.108 192.168.13.110 #vi $HADOOP_CONF_DIR/core-site.xml <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <!-- Put site-specific property overrides in this file. --> <configuration> <property> <name>fs.default.name</name> <value>hdfs://192.168.13.100:9000</value> </property> </configuration> #vi $HADOOP_CONF_DIR/hdfs-site.xml <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <!-- Put site-specific property overrides in this file. --> <configuration> <property> <name>dfs.replication</name> <value>3</value> <description>Default block replication. The actual number of replications can be specified when the file is created. The default is used if replication is not specified in create time. </description> </property> </configuration> #vi $HADOOP_CONF_DIR/mapred-site.xml <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <!-- Put site-specific property overrides in this file. --> <configuration> <property> <name>mapred.job.tracker</name> <value>192.168.13.100:11000</value> </property> </configuration> ~ 在slave上的配置文件如下(hdfs-site.xml不需要配置): [root@test12 conf]# cat core-site.xml <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <!-- Put site-specific property overrides in this file. --> <configuration> <property> <name>fs.default.name</name> <value>hdfs://namenode:9000</value> </property> </configuration> [root@test12 conf]# cat mapred-site.xml <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <!-- Put site-specific property overrides in this file. --> <configuration> <property> <name>mapred.job.tracker</name> <value>namenode:11000</value> </property> </configuration> 启动 export PATH=$HADOOP_HOME/bin:$PATH hadoop namenode -format start-all.sh 停止stop-all.sh 在hdfs上创建danchentest文件夹,上传文件到此目录下 $HADOOP_HOME/bin/hadoop fs -mkdir danchentest $HADOOP_HOME/bin/hadoop fs -put $HADOOP_HOME/README.txt danchentest cd $HADOOP_HOME hadoop jar hadoop-0.20.1-examples.jar wordcount /user/hadoop/danchentest/README.txt output1 09/12/21 18:31:44 INFO input.FileInputFormat: Total input paths to process : 1 09/12/21 18:31:45 INFO mapred.JobClient: Running job: job_200912211824_0002 09/12/21 18:31:46 INFO mapred.JobClient: map 0% reduce 0% 09/12/21 18:31:53 INFO mapred.JobClient: map 100% reduce 0% 09/12/21 18:32:05 INFO mapred.JobClient: map 100% reduce 100% 09/12/21 18:32:07 INFO mapred.JobClient: Job complete: job_200912211824_0002 09/12/21 18:32:07 INFO mapred.JobClient: Counters: 17 09/12/21 18:32:07 INFO mapred.JobClient: Job Counters 09/12/21 18:32:07 INFO mapred.JobClient: Launched reduce tasks=1 查看输出结果文件,这个文件在hdfs上 [root@test11 hadoop]# hadoop fs -ls output1 Found 2 items drwxr-xr-x - root supergroup 0 2009-09-30 16:01 /user/root/output1/_logs -rw-r--r-- 3 root supergroup 1306 2009-09-30 16:01 /user/root/output1/part-r-00000 [root@test11 hadoop]# hadoop fs -cat output1/part-r-00000 (BIS), 1 (ECCN) 1 查看hdfs运行状态,可以通过web界面来访问http://192.168.13.100:50070/dfshealth.jsp;查看map-reduce信息, 可以通过web界面来访问http://192.168.13.100:50030/jobtracker.jsp;下面是直接命令行看到的结果。 出现08/01/25 16:31:40 INFO ipc.Client: Retrying connect to server: foo.bar.com/1.1.1.1:53567. Already tried 1 time(s). 的原因是没有格式化:hadoop namenode -format 本文转自yifangyou 51CTO博客,原文链接:http://blog.51cto.com/yifangyou/615898,如需转载请自行联系原作者

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

Linux记录—进程相关学习

查看进程命令 ps -aux 常用组合命令,和Shall的 | grep 查询相关进程信息 -l 仅查看与自己相关的进程 详细信息中STAT代表了进程的状态: R:正在被cpu运行或者就绪的状态; S:处于等待状态中的进程,一旦被该进程等待的资源释放,马上进入运行状态 D:不可中断的睡眠状态,只能用wake_up()函数唤醒。 T:当收到SIG信号会进入暂停/运行状态 Z:僵尸状态:进程已经终止,但是父进程还没有询问其状态不可被kill。 top:动态查看内存变化 常用:top -b -n 3 >/tmp/top.txt 将top信息进行三次并输出到文件中。 pstree:查看进程树 常用:-Aup阿斯科码显示 进程管理 kill : 发送信号 -15:已正常的方式终止一个进程。默认 -9:立刻强制终止一个进程 -1:守护进程重启,非守护进程则终止进程 killall:杀死多个进程 系统资源监控: free -t 内存使用情况 uname:属性内核信息-a全部信息 uptime:观察系统启动时间与工作负载 netstat:网络监控 -antp vmstat: cpu/内存/磁盘输入输出状态 1 4 1秒刷新一次显示4行后不显示了 其他 tail -F filename 检测文件状态 bg/fg 将任务切换前台后台 & 在任何命令加上后可以使这条命令在后台执行。 jobs 显示后台的程序。

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

Linux 基础 - 磁盘管理 - 01

在宏观架构上,看一下我们要学习的这个磁盘,到底是位于什么位置。 它又是与计算机架构的其他部件如何协同工作的, 从而就可以找到在学习这块知识时,需要额外注意的点。 也能懵懂的知道,以后再进行磁盘文件读取速度优化的时候,从哪几个部件 ,哪几个步骤进行着手。 最底层的,往往是最重要的 - 基础不牢,地动山摇! 关注最基础的部分,反而会事半功倍。继续..... 本文转自Mr2Left 51CTO博客,原文链接:http://blog.51cto.com/caihong/1980812

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

Linux常用26条命令

1. cd 切换目录 cd path 切换至当前目录下的path目录 cd .. 返回上一级目录 cd / 切换至根目录 cd /usr 切换至根目录下的usr目录 2. ls 显示当前目录内容 ls 默认显示当前目录内容 ls -a 显示包括隐藏文件在内的所有内容 ls -s 按大小排序显示 ls -l 显示包含细节 权限、大小、创建时间等 ls -h 显示文件大小,按K、M、G等作为单位 ls -r 逆向显示 ls -R 递归显示内容及其子目录的内容 ls -f 显示文件类型 3. touch 创建文件 touch filename 创建一个名为filename的空白文件 4. rm 删除 rm -f 强制删除文件 rm -i 会提示确认删除 rm -v 会显示删除进度 rm -rf 删除文件夹/目录 –ri –vi 效果同上 rmdir 删除文件夹/目录 5. cp 复制 cp a.txt local/b 即将文件a.txt复制到local目录下并且命名为b cp –a 将文件特性一并复制 cp –i 复制前会先询问 cp –r 递归复制,会复制整个目录包括其子目录 cp –p 连同文件属性 6. 查看文件内容 cat 会从上至下显示文件全部内容 more 会分页显示文件内容 more +n 从第n行开始显示 more –n 定义滚动一屏为n行 more +/point 查找”point”字符串,并从该字符串前两行开始显示 more 操作命令: Enter 向下n行,需要定义:默认为1行; Ctrl+F 向下滚动一屏; 空格键 向下滚动一屏; Ctrl+B 返回上一屏 q 退出more V 调用vi编辑器 less 也是分页显示文件 less 会分页显示文件内容 less +n 从第n行开始显示 less –n 定义滚动一屏为n行 less +/point 查找”point”字符串,并从该字符串前两行开始显示 less -m 显示类似more命令的百分比 less 操作命令: /字符串:向下搜索“字符串”的功能 ?字符串:向上搜索“字符串”的功能 n:重复前一个搜索(与 / 或 ? 有关) N:反向重复前一个搜索(与 / 或 ? 有关) b 向后翻一页 d 向后翻半页 h 显示帮助界面 Q 退出less 命令 u 向前滚动半页 y 向前滚动一行 空格键滚动一行 回车键滚动一页 [pagedown]: 向下翻动一页 [pageup]: 向上翻动一页 7. grep查找某文件中某一字符串 grep JND server.xml 即在server.xml中查找JND字符串 8. pwd输出当前所在目录 9. ps显示正在执行进程的执行情况 ps –A 显示所有进程 ps –x 列出所有进程,包括没有终端机的 ps –u 并列出使用者名称和使用时间 ps –r 只列出正在执行的前台进程 top 和ps功能类似,并会几秒钟更新一次,便于用于追踪。 10. kill 用于终止某一正在运行的进程 Kill 234 即将pid为234的进程杀死 11.显示当前时间 date 会显示当前时间 date –u 使用格林尼治时间 date –s 设置时间 cal 显示当前月的日历 cal 2017 显示2017一整年的日历 12. shutdown关机 根用户才能使用该命令 shutdown –r 关机后重启 shutdown –t 2 两分钟内关机 reboot 快速关机,不降内存或缓冲区内东西写会硬盘 13. du 显示文件目录所占磁盘空间大小 du –h 以KB、MB、GB为单位显示大小,提高可读性 du –s 只列出目录下各文件总和 du –a 显示全部目录以及子目录每个文件大小 14. 压缩解压命令 bzip2/bunzip2 扩展名为bz2的压缩/解压缩工具 gzip/gunzip 扩展名为gz的压缩/解压缩工具 zip/unzip 扩展名为zip的压缩/解压缩工具 bzip2 filename 文件被压缩并保存为filename.bz2 bunzip2filename.bz2 解压缩filename.bz2后被删除,而以解压后的filename代替 bzip2filename.bz2 file1 file2 file3 /usr/local/files 把file1、file2、file3以及/usr/local/files目录下内容压缩为filename.bz2 gzip、zip命令与bzip2命令类似 15.tar 用于备份 -c 创建一个新归档 -f 当与-c选项一起使用时,创建的tar文件使用该选项指定的文件名;当与-x选项一起使用时,则解除该选项指定的归档 -t 显示包括在tar文件中的文件列表 -v 显示文件的归档进度 -x 从归档中抽取文件 -z 使用gzip压缩tar文件 -j 使用bzip2压缩tar文件 tar –cvf filename.tar directory/file /home/mine 将directory/file、/home/mine放入归档文件中 tar –tvf filename.tar 列出filename.tar文件的内容 tar –xvf filename.tar 抽取tar文件的命令 16. su 切换用户 su 用户名 没有用户名则默认为root 使用 exit 退出该用户 17. useradd 增加用户 使用需用root用户 useradd zqh 增加一个名为zqh的用户 18. chmod 修改权限 如 chmod a+rwx file.txt 表示给file.txt所有用户增加所有权限 其中 a表示全部用户,此外还有u(拥有文件的用户)、g(所有者所在的群)、o(其他用户); +表示增加权限,此外还有 –(删除权限)、=(覆写为后面接的权限); r读取权限、w写入权限、x执行权限,rwx即所有权限 chomd u-rwx 即删除文件者所有权限 此外还可以用数字来表达: r为4、w为2、x为1 都相加为7即表示所有权限 语法为:chomd ugo filename u(文件所有者)、g(所有者所在的群)、o(其他用户)各对应一个数字 chmod 751filename 即chmod u+rwx,g=rx,0=x filename 19. chgrp用于改变文件所属用户组 chgrp users -R ./dir # 即递把dir目录下中的所有文件和子目录下所有文件的用户组都修改为users 20. chown 用于改变文件所有者 用法与chgrp类似 21. ping 测试目标主机网络是否正常 ping 主机名或IP地址 22. telnet 用于远程登录 telnet主机名或IP地址 23. ftp 用于传输文件 ftp主机名或IP地址 24. find 查找符合条件的文件 find /usr/local/myfile -mtime 0 # 即查找今天内/usr/local/myfile目录下修改过的文件 find /usr/local/myfile –user zqh # 即查找目录/usr/local/myfile下所有者为zqh的文件 25. clear 清屏 26. passwd修改用户密码 根据提示输入旧密码后输入新密码即可

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

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文件系统,支持十年生命周期更新。

用户登录
用户注册