Arno 发布于 11月13, 2018

FireKylin博客配置集成Gitalk评论插件

配置前准备

  • Github 账号
  • 创建 Repositorie 仓库用于评论系统
    • 评论内容会自动在仓库的Issue中生成
  • 创建 OAuth Apps 点击创建, 简要说明创建OAuth需要填写的内容:
    • Application name:应用的名字随便起,我定义的是blog
    • Homepage URL:填写你的博客域名
    • Application description:可选描述,可留空。
    • Authorization callback URL:填写你的博客域名

创建完OAuth Apps,就得到了 Client ID & Client Secret

阅读全文 »

Arno 发布于 06月16, 2018

Centos7.x 安装Openvpn详解

软件版本

  • Centos - 7.x
  • easy-rsa - 3.0.3
  • OpenVPN - 2.4.6

安装

建议安装启用epel源,采用yum的方式安装openvpn

yum install -y epel-release 
yum update -y
yum install -y openssl lzo pam openssl-devel lzo-devel pam-devel
yum install -y easy-rsa
yum install -y openvpn

阅读全文 »

Arno 发布于 05月03, 2018

探索 - Elastic Stack(ELK)实时日志分析平台

简介

  • Elasticsearch(更多详情
    搜索、分析和存储您的数据。
  • Kibana(更多详情
    实现数据可视化。
  • Logstash(更多详情
    Logstash 是动态数据收集管道,拥有可扩展的插件生态系统,能够与 Elasticsearch 产生强大的协同作用。
  • Beats(更多详情
    Beats 是轻量型采集器的平台,从边缘机器向 Logstash 和 Elasticsearch 发送数据。
  • X-Pack(更多详情
    X-Pack 是集成了多种便捷功能的单个插件 — security、alerting、monitoring、reporting、graph 探索和 machine learning 。
  • ES-Hadoop(更多详情
    Elasticsearch-Hadoop (ES-Hadoop) 连接器将 Hadoop 海量的数据存储和深度加工能力与 Elasticsearch 实时搜索和分析功能进行连接。它能够让您快速深入了解大数据,并让您在 Hadoop 生态系统中更好地开展工作。

阅读全文 »

Arno 发布于 04月18, 2018

GoAccess -日志分析简明介绍

什么是 GoAccess

GoAccess是一个开源的实时网络日志分析器和交互式查看器,可在*nix系统的终端或浏览器中运行。

为什么选择 GoAccess

GoAccess 被设计成一个快速的基于终端的日志分析器。它的核心思想是快速分析和查看web服务器统计数据,而无需使用浏览器。虽然终端输出是默认输出,但它有能力生成完整的实时HTML报告(用于分析、监视和数据可视化),以及JSON和CSV报告。

阅读全文 »

Arno 发布于 03月29, 2018

探索容器服务 - Docker 简介

什么是 Docker

Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,它是基于 dotCloud 公司多年云服务技术的一次革新,并于 2013 年 3 月以 Apache 2.0 授权协议开源,主要项目代码在 GitHub 上进行维护。Docker 项目后来还加入了 Linux 基金会,并成立推动 开放容器联盟(OCI)。

Docker 自开源后受到广泛的关注和讨论,至今其 GitHub 项目已经超过 4 万 6 千个星标和一万多个 fork。甚至由于 Docker 项目的火爆,在 2013 年底,dotCloud 公司决定改名为 Docker。Docker 最初是在 Ubuntu 12.04 上开发实现的;Red Hat 则从 RHEL 6.5 开始对 Docker 进行支持;Google 也在其 PaaS 产品中广泛应用 Docker。

阅读全文 »

Arno 发布于 03月22, 2018

Linux I/O 调度算法

IO调度器的总体目标是希望让磁头能够总是往一个方向移动,移动到底了再往反方向走,这恰恰就是现实生活中的电梯模型,所以IO调度器也被叫做电梯 (elevator),相应的算法也就被叫做电梯算法。

而Linux中IO调度的电梯算法有好几种,一个叫做as(Anticipatory),一个叫做 cfq(Complete Fairness Queueing),一个叫做deadline,还有一个叫做noop(No Operation),具体使用哪种算法我们可以在启动的时候通过内核参数elevator来指定。

阅读全文 »

Arno 发布于 03月07, 2018

用代码实现打印九九乘法表

说明

任何一个语言都可以轻松的实现打印九九乘法表,这里只是简单的做一些示例,希望可以开拓新同学的思路。

AWK

awk 'BEGIN{for(i=1;i<10;i++) {for(j=1;j<=i;j++) {printf "%d%s%d%s%d\t",j,"*",i,"=",i*j;}printf "\n"}}'

阅读全文 »

Arno 发布于 03月06, 2018

keepalived + rsync +inotify 实现真正的高效数据实时同步

背景

在公司接手处理 单点Gitlab 服务高可用改造需求,前期也测试过基于NFS/NAS的双主架构,但由于NFS/NAS的架构访问体验非常的差,其中的网络消耗成本太高。官方虽然有提供基于AWS的双主架构,但官方也强烈不建议这样。所以采用了主备方案,主备模式中,最重要的是保证两端的数据一致性,且能够实现自动的故障转移,数据实时同步方案这里我简单提一下。

  • Pacemaker Cluster + DRBD
    这是Gitlab官方主备数据同步方案 ,但实施复杂度高,配置较为复杂,后续我再补充此方案过程。
  • Keepalived + Rsync + Inotify-tools
    实施起来比较灵活,可控性高,所以这里我用此方法实现数据高可用。

如果大家有好的Gitlab双活高可用方案,希望可以交流一下。

阅读全文 »