区块链文章存档 >> blog.lidaren.com
Android-Charts技术交流QQ群现已开通,欢迎加入。群号:170987350

Mesos + Marathon + Deimos + Docker 容器集群组建

July 25th, 2016 No comments

今天用单机试验配置了Mesos + Marathon + Deimos + Docker容器集群环境,目的是为以后的搭建轻量级别PaaS平台

先科普
Mesos,是Apache下的开源分布式资源管理框架,它被称为是分布式系统的内核。Mesos最初是由加州大学伯克利分校的AMPLab开发的,后在Twitter得到广泛使用。
Marathon,是一个mesos框架,能够支持运行长服务,比如web应用等。是集群的分布式Init.d,能够原样运行任何Linux二进制发布版本。
Deimos, 是一个为Mesos准备的Docker插件。使用Docker接口可以让Mesos批量管理Docker容器
Docker,是一个重新定义了程序开发测试、交付和部署过程的开放平台。Docker也是容器技术的一种,它运行于Linux宿主机之上,每个运行的容器都是相互隔离的,也被称为轻量级虚拟技术或容器型虚拟技术。
Read more…

Ubuntu的更改apt-get代理设置

July 15th, 2016 No comments

网站服务器切换回国内机房之后就是各种不适应,早上安装Docker,一直提示

Get:1 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 docker-engine amd64 1.11.2-0~xenial [14.5 MB]
Err:1 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 docker-engine amd64 1.11.2-0~xenial
  Operation too slow. Less than 10 bytes/sec transferred the last 120 seconds
E: Failed to fetch https://apt.dockerproject.org/repo/pool/main/d/docker-engine/docker-engine_1.11.2-0~xenial_amd64.deb  Operation too slow. Less than 10 bytes/sec transferred the last 120 seconds
E: Unable to fetch some archives, maybe run a-get update or try with --fix-missing?

调查后发现是因为docker把相关文件放在了Amazon S3上,国内只能时好时不好。原因大家都懂

直接修改“/etc/apt/apt.conf”文件,配合Shadowsocks使用。

Acquire::http::proxy "http://127.0.0.1:1080/";
Acquire::ftp::proxy "ftp://127.0.0.1:1080/";
Acquire::https::proxy "https://127.0.0.1:1080/";

另外,apt-get也有一个“-o”选项,直接跟apt-get的设置变量,就不用指定配置文件了,比如

sudo apt-get -o Acquire::http::proxy="http://127.0.0.1:1080/”

其他安装方法
http://get.daocloud.io/#install-docker

参考
http://blog.csdn.net/sww_simpcity/article/details/8776098

Categories: 系统管理 Tags: ,

w_char*和char *转换宽窄字符

June 29th, 2016 No comments

w_char*和char*在windows编程过程中进行转换是经常需要的,通常由互联网我们取到都是utf-8编码,到windows应用程序里面却需要用unicode编码。
一开始用stdlib.h 下wcstombs_s和mbstowcs_s的代码实现,发现总是转换失败和出错。
char 转 WCHAR 、wchar_t、LPWSTR ,窄字符转宽字符,C++代码

//+------------------------------------------------------------------+
//| char to WCHAR 、wchar_t、LPWSTR etc                              |
//+------------------------------------------------------------------+
static char* WStr2CStr(const wchar_t* WStr)
  {
             // 长度设置
              size_t len = wcslen(WStr) + 1;
              size_t converted = 0;
              // 准备转换的对象
              char *CStr;
              CStr=(char*)malloc(len*sizeof(char));
              // 转换
              wcstombs_s(&converted, CStr, len, WStr, _TRUNCATE);
              // 返回
              return CStr;
  }

Read more…

Categories: 语言编程, 零敲碎打 Tags: , ,

Windows下实现Deamon守护脚本

June 28th, 2016 No comments

最近需要在Windows服务器上保持程序长期允许,因为程序比较老,无法用srvany.exe 改写成windows服务,只能自己手动编写守护脚本实现,网上找了短比较靠谱的守护脚本,在此mark一下。支持监视进程、端口。

守护脚本定义部分

@echo off
 
::检测时间间隔,单位:秒
set _interval=5
 
::需要守护的进程名称
set _processName=ProcessName
 
::需要守护的进程启动命令
set _processCmd=C:\xxxx.exe
 
::需要守护的进程预估启动完毕所需时间,单位:秒
set _processTimeout=10
 
::需要守护的进程所监听的端口
set _port=8080
 
::进程用户名,一般是Administrator
set _username=Administrator

Read more…

Categories: 零敲碎打 Tags: , ,

[Linux]使用SSH-KEY方式登录SSH

January 18th, 2016 No comments

管理Linux主机多了之后,管理大量的登录密码是一件很麻烦的事情,使用SSH-KEY方式登录服务器可以很好的解决问题。
以下是使用SSH-KEY方式实现客户端免密码登录SSH的方法。一套SSH-KEY可以等遍所有的服务器。

1.使用ssh-keygen在本地创建登录远程SSH服务器使用的公钥和私钥

ssh-keygen -t [rsa|dsa] -C "comments"
# -t 可选择RSA 和 DSA 两种密钥
# -C 可选注释

一路enter之后,会在~/.ssh目录下创建两个文件
id_dsa #私钥,妥善保存好。
id_dsa.pub #公钥

2.将公钥复制到服务器上对应用户的 ~/.ssh/目录下。

3.在服务器用户的 ~/.ssh/目录下执行

cat id_dsa.pub >>authorized_keys
#  首次使用的时候
chmod 600 authorized_keys

需要注意的是出于安全考虑,authorized_keys必须是600权限
Read more…

[iOS]objective-c AES/DES/3DES等加密算法实现

January 12th, 2016 No comments

objective-c对AES/DES/3DES等加密提供了统一的加密方法CCCrypt进行实现,目前主要支持的算法有

@constant kCCAlgorithmAES128 Advanced Encryption Standard
@constant kCCAlgorithmAES Advanced Encryption Standard, 128-bit block
@constant kCCAlgorithmDES Data Encryption Standard
@constant kCCAlgorithm3DES Triple-DES, three key, EDE configuration
@constant kCCAlgorithmCAST CAST
@constant kCCAlgorithmRC4 RC4 stream cipher
@constant kCCAlgorithmBlowfish Blowfish block cipher

Read more…

Categories: 零敲碎打 Tags: , ,

Linux文件批量转编码iconv命令

January 12th, 2016 No comments

Linux下转换编码可以直接使用iconv命令搞定。支持单个文件和批量处理。
iconv命令可以将一种已知的字符集文件转换成另一种已知的字符集文件。它的作用是在多种国际编码格式之间进行文本内码的转换。

单个文件处理的shell命令

iconv -t utf-8 -f gb2312 source > target

# -f 源编码
# -t 目标编码
# -l :列出已知的编码字符集合
# -o file :指定输出文件
# -c :忽略输出的非法字符
# -s :禁止警告信息,但不是错误信息
Read more…

Categories: 零敲碎打 Tags: ,