Blog

Go 1.8的几个新特性

📅 2017-02-17

Go1.8发布了,这里先简单学习一下Go1.8的几个新特性。

新的切片排序Api #

在以前要对切片排序要实现sort.Interface接口:

 1package main
 2
 3import (
 4	"fmt"
 5	"sort"
 6)
 7
 8type Person struct {
 9	Name string
10	Age  int
11}
12
13func (p Person) String() string {
14	return fmt.Sprintf("%s: %d", p.Name, p.Age)
15}
16
17// ByAge implements sort.Interface for []Person based on
18// the Age field.
19type ByAge []Person
20
21func (a ByAge) Len() int           { return len(a) }
22func (a ByAge) Swap(i, j int)      { a[i], a[j] = a[j], a[i] }
23func (a ByAge) Less(i, j int) bool { return a[i].Age < a[j].Age }
24
25func main() {
26	people := []Person{
27		{"Bob", 31},
28		{"John", 42},
29		{"Michael", 17},
30		{"Jenny", 26},
31	}
32
33	fmt.Println(people)
34	sort.Sort(ByAge(people))
35	fmt.Println(people)
36
37}

现在只需这样做:

...

使用Prometheus监控服务器

📅 2017-02-12

Prometheus是一套开源监控系统,使用Go语言开发,是Google BorgMon监控系统的类似实现。

Prometheus的基本原理是通过HTTP协议周期性抓取被监控组件的状态,任意组件只要提供对应的HTTP接口就可以接入监控,是比较适合Docker,Kubernetes等环境的监控系统之一。输出监控信息的HTTP接口被称作exporter。

...

CentOS7 network不能加载ifcfg-lo文件的问题

📅 2017-02-07

最小化安装CentOS 7.2.1511后,发现network启动打印不能加载ifcfg-lo文件的信息:

1systemctl status -l network
2...
3 Could not load file '/etc/sysconfig/network-scripts/ifcfg-lo'
4...

修改/etc/sysconfig/network-scripts/ifcfg-lo,追加如下一行

1TYPE=LOOPBACK

重启network.service,问题解决

...

Ceph文件系统存储之Ceph FS

📅 2017-02-06

Ceph FS是一个支持POSIX接口的文件系统。文件系统对于客户端来说可以方便的挂载到本地使用。Ceph FS构建在RADOS之上,继承RADOS的容错性和扩展性,支持冗余副本和数据高可靠性。

MDS #

MDS(Metadata Server)即元数据Server主要负责Ceph FS集群中文件和目录的管理。 元数据主要记录数据的属性,如文件存储位置、大小、存储时间等,同时负责文件查找、文件记录、存储位置记录、访问授权等。

...

Linux监控工具atop介绍

📅 2017-02-06

安装 #

atop是一个功能强大的linux服务器监控工具,它支持收集和显示CPU,内存,磁盘,网络,进程等资源的相关信息,负载比较大的资源信息会以特别的颜色显示, 可以作为系统管理的辅助工具使用。

atop提供sysv和systemd两种类型的rpm包,这里在CentOS7上选择atop-2.2-3.systemd.x86_64.rpm

...

使用Amazon S3 API访问Ceph RGW

📅 2017-02-06

本文内容已过期

我们已经部署了Ceph RGW服务,并使用管理工具radosgw-admin创建了S3用户,本篇我们尝试使用S3 API访问Ceph RGW。 在开始之前先了解一下Amazon S3。

Amazon S3 #

Amazon S3(即Amazon Simple Storage Service) 是一种面向 Internet 的存储服务,Amazon还提供了S3 REST API可随时在 Web 上的任何位置存储和检索的任意大小的数据,同时提供Java、Python、Golang等各种语言的的SDK。 而Ceph RGW兼容绝大部分S3 Api,我们先熟悉一下S3服务的一些基本概念。

...

Ceph对象存储之RGW

📅 2017-02-05

Ceph RGW简介 #

Ceph RGW(即RADOS Gateway)是Ceph对象存储网关服务,是基于LIBRADOS接口封装实现的FastCGI服务,对外提供存储和管理对象数据的Restful API。 对象存储适用于图片、视频等各类文件的上传下载,可以设置相应的访问权限。目前Ceph RGW兼容常见的对象存储API,例如兼容绝大部分Amazon S3 API,兼容OpenStack Swift API。

...

Ceph块存储之RBD

📅 2017-02-05

RBD简介 #

Ceph可以同时提供对象存储RADOSGW、块存储RBD、文件系统存储Ceph FS。 RBD即RADOS Block Device的简称,RBD块存储是最稳定且最常用的存储类型。RBD块设备类似磁盘可以被挂载。 RBD块设备具有快照、多副本、克隆和一致性等特性,数据以条带化的方式存储在Ceph集群的多个OSD中。

...

Linux系统运行级别

📅 2017-02-05

系统运行级别 #

Linux系统的运行级别决定系统在哪种模式下运行,通过0~6这7个数字来表示运行级别。

系统运行级别:

  • 0 - 关机: 运行级别设置成0,开机后就会进入关机状态。当运行级别切换到0时,会立即停止正在运行的服务,并关闭系统电源。
  • 1 - 单用户模式: 无网络链接,不运行守护进程。主要用于系统的维护,只允许root用户登录。
  • 2 - 本地多用户模式: 无网络链接,不运行守护进程。
  • 3 - 完全多用户文本模式: 正常启动系统及相关服务。
  • 4 - 用户自定义: 保留,未使用,主要是为开发人员定制功能,例如用于单片机或其他系统的开发和应用。
  • 5 - 多用户图形系统: 该模式与3基本相同,除了文本模式之外还有图形界面
  • 6 - 重启: 该级别是系统重启模式,系统在进入该级别后会立即重新启动

CentOS7系统运行级别 #

CentOS 7系统运行级别使用systemd的target替换了sysvinit,每个运行级别都有一个自己的target文件,可以在/lib/systemd/system目录下看到(实际上这些运行级别的target文件是一个软连接文件)

...

Linux开启ipv4转发

📅 2017-02-04

查看IP转发功能的状态,若net.ipv4.ip_forward为0,表示禁止进行ip转发。

1sysctl net.ipv4.ip_forward
2net.ipv4.ip_forward = 0

修改 /etc/sysctl.conf:

1net.ipv4.ip_forward = 1

执行如下命令使修改生效:

1sysctl -p /etc/sysctl.conf

© 2024 青蛙小白 | 总访问量 | 总访客数