vertica,greenplumr容器安装
一,vertica
来源:
https://github.com/sumitchawla/docker-vertica
使用方法:
# To run without a persistent datastore
docker run -p 5433:5433 sumitchawla/vertica
#To run with a persistent datastore
docker run -p 5433:5433 -d -v /path/to/vertica_data:/home/dbadmin/docker sumitchawla/vertica
连接参数
Default DB Name - docker
Default User - dbadmin
Default Password (NO PASSWORD) -
######
vertca 镜像
https://github.com/bluelabsio/docker-vertica 需要下载rpm
下载vertica 客户端
https://www.vertica.com/download/vertica/
https://softwaresupport.softwaregrp.com/ 下载页面
二,greenplum
https://github.com/greenplum-db/gpdb/releases 下载页面(开源下载,官网需登录)
https://hub.docker.com/r/kevinmtrowbridge/greenplumdb_singlenode (镜像直接用)
https://github.com/kevinmtrowbridge/greenplumdb_singlenode_docker
https://github.com/kevinmtrowbridge/greenplumdb_singlenode_docker/blob/master/Dockerfile
单机版安装
https://www.jianshu.com/p/513935550350
greenplum 源码安装
https://yq.aliyun.com/articles/609855#
单机安装的记录:z重要
容器内操作
root
vi /etc/sysctl.conf
3 vi /etc/security/limits.conf
4 sysctl -p
5 yum install wget
6 wget https://github.com/greenplum-db/gpdb/releases/download/6.0.0/greenplum-db-6.0.0-rhel7-x86_64.rpm
7 yum localinstall greenplum-db-6.0.0-rhel7-x86_64.rpm
8 ip a s
9 find / -name "*greenplum*"
10 vi /etc/hosts
11 groupadd gpadmin
12 useradd -g gpadmin gpadmin
13 passwd gpadmin
14 chown -R gpadmin.gpadmin /usr/local/greenplum-db
15 cd /usr/local/greenplum-db
16 ll
17 cd
18 su - gpadmin
19 vi /etc/sysconfig/network
20 su - gpadmin
21 \cp -R -f /usr/lib64/python2.7/site-packages/. /usr/local/greenplum-db/lib/python//
22 echo "RemoveIPC=no" >> /etc/systemd/logind.conf
23 su - gpadmin
24 ss -tanl
25 yum install -y net-tools which openssh-clients openssh-server less zip unzip iproute
26 /usr/sbin/sshd
27 ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
28 ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key
29 ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key
30 /usr/sbin/sshd
31 ss -tanl
32 su - gpadmin
33 ss -tanl
34 history
gpaadmin操作
mkdir -p /home/gpadmin/masterdata
2 mkdir -p /home/gpadmin/segmentdata
3 mkdir -p /home/gpadmin/segmentmirror
4 vi /home/gpadmin/all_hosts
5 vi /home/gpadmin/seg_hosts
6 cd /home/gpadmin/
7 vi .bashrc
8 ll
9 vi /home/gpadmin/gpinitsystem_config
10 cat .bashrc
11 . .bashrc
12 gpssh-exkeys -f /home/gpadmin/all_hosts
13 gpinitsystem -c /home/gpadmin/gpinitsystem_config
14 ss -tanl
15 history
docker run -d -p 5432:5432 --rm -h "mdw" greenplum-v2
使用容器生成greenplum后的操作
vi /etc/hosts
172.17.0.2 mdw sdw
启动sshd /usr/sbin/sshd
su - gpadmin
. .bashrc
gpstart
使用小例子
su - gpadmin
psql -d gpmaster
psql: FATAL: database "gpmaster" does not exist
创建数据库:
createdb gpadmin -E utf-8
登录psql -d gpadmin
开放远程权限
cd $MASTER_DATA_DIRECTORY/ masterdata目录(gpseg-1内)
vi pg_hba.conf
host testDB gpadmin 192.168.96.1/32 md5
通过gpstop -u命令使配置生效
通过其他机器登录数据库
$ psql -h192.168.96.128 -p5432 -d testDB -Ugpadmin
单机安装(容器安装的重要节点时刻)
系统:centos7 greenplum版本:greenplum-db-6.0.0-rhel7-x86_64.rpm
使用root用户操作:
一,前期准备
关闭防火墙
systemctl disable firewalld.service
systemctl enable firewalld.service
关闭selinux
sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config
配置网络与内存参数
vim /etc/sysctl.conf
加入以下内容
net.ipv4.ip_forward = 0
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 1
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.sem = 250 64000 100 512
kernel.shmmax = 500000000
kernel.shmmni = 4096
kernel.shmall = 4000000000
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_max_syn_backlog = 4096
net.core.netdev_max_backlog = 10000
vm.overcommit_memory = 2
net.ipv4.conf.all.arp_filter = 1
vim /etc/security/limits.conf
* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 131072
参数生效
sysctl -p
确定sshd 启动正常 ss -tanl 看端口
二,安装greenplum
安装依赖包(可能还有,使用yum -y localinstall xxxx.rpm 自动解决依赖问题)
yum install -y net-tools which openssh-clients openssh-server less zip unzip iproute rsync openssl openssh perl bzip2 apr apr-util ed libevent-devel libyaml
rpm -ivh greenplum-db-6.0.0-rhel7-x86_64.rpm 缺少依赖装之
默认安装在 /usr/local/greenplum-db/
三,配置单机模式
使用root 操作
1,配置hosts解析
vim /etc/hosts
10.1.5.10 mdw sdw
注:10.1.5.10是虚拟机的ip地址,使用127.0.0.1 不成功
2,创建用户
groupadd gpadmin
useradd -g gpadmin gpadmin
passwd gpadmin 设置简单的密码
3,改变greenplum安装目录的用户和用户组
chown -R gpadmin.gpadmin /usr/local/greenplum-db/
4,切换到gpadmin账户下,在家目录下建立master和segment的数据存放目录。你也可以自行设定数据存放目录,如果你不是以gpadmin建立的目录,还需要修改目录的用户和用户组,最好是建在家目录下
su - gpadmin
mkdir -p /home/gpadmin/masterdata
mkdir -p /home/gpadmin/segmentdata
mkdir -p /home/gpadmin/segmentmirror
以下是su - gpadmin 后的操作
5,创建包含所有主机的文件all_hosts
vim /home/gpadmin/all_hosts
mdw
sdw
6,建包含segment主机名的文件
vim /home/gpadmin/seg_hosts
sdw
7,更改主机的名称
这里使用root 修改(以下都执行)
hostnamectl set-hostname "mdw"
hostname mdw
vim /etc/sysconfig/network
mdw
退出服务器重新登录
8,将MASTER_DATA_DIRECTORY加入Master主机环境中,修改gpadmin用户的.bashrc
这里使用gpadmin 用户登录后操作
cd /home/gpadmin
vim .bashrc
export MASTER_DATA_DIRECTORY=/home/gpadmin/masterdata/gpseg-1 #(配置的masterdata路径)
source /usr/local/greenplum-db/greenplum_path.sh #安装的greenplum路径
忘记在哪里可以搜索
9,时间同步
因为master和segment是在同一台机器,所以不需要做时间同步,如果不在同一台机器,需要做时间同步
10,python模块转移,防止提示失败
\cp -R -f /usr/lib64/python2.7/site-packages/. /data/program/gpsql/lib/python/
11,centos 7执行(原因未知)
echo "RemoveIPC=no" >> /etc/systemd/logind.conf
systemctl restart systemd-logind.service
12,编辑gp初始化配置文件,
vim /home/gpadmin/gpinitsystem_config
添加以下内容
ARRAY_NAME="EMC Greenplum DW"
SEG_PREFIX=gpseg
PORT_BASE=33000
declare -a DATA_DIRECTORY=(/home/gpadmin/segmentdata)
MASTER_HOSTNAME=mdw
MASTER_DIRECTORY=/home/gpadmin/masterdata
MASTER_PORT=5432
MACHINE_LIST_FILE=/home/gpadmin/seg_hosts
TRUSTED_SHELL=ssh
CHECK_POINT_SEGMENTS=8
ENCODING=UNICODE
MIRROR_PORT_BASE=43000
REPLICATION_PORT_BASE=34000
MIRROR_REPLICATION_PORT_BASE=44000
declare -a MIRROR_DATA_DIRECTORY=(/home/gpadmin/segmentmirror)
有多个segment,declare就多加几个路径 参考其他资料
13,建立信任关系,主要为了免密码登录的麻烦,若果提示命令不存在,先source一下.bashrc
gpssh-exkeys -f /home/gpadmin/all_hosts
如果tab 键无法搞出该命令,可能环境变量未生效
14,初始化数据库
gpinitsystem -c /home/gpadmin/gpinitsystem_config
15,等待log出现,中间需要按y
完成后可以gpstop
再执行 gpstart 报成功后完成
集群模式(未做)
:参考他的做吧
https://www.cnblogs.com/scoter2008/p/5928972.html
如果在容器内操作,需要注意的是容器内无sshd服务,所以安装完openssh-server后使用/usr/sbin/sshd 后启动sshd服务,
使用ss -tanl 查看端口信息
容器安装参考了这个网址:
http://gitop.cc/posts/install-greenplum-in-docker/
由于容器内主机名随机,需要起容器时指定,然后再进入容器内部操作添加主机名,起动sshd,启动greenplum ,比较麻烦。
vertica,greenplumr容器安装的更多相关文章
- vertica单节点安装教程
[准备] 1.CentOS 7.6的镜像盘(下载地址:官网) 2.vertica-9.1.0-0.x86_64.RHEL6(下载地址:https://pan.baidu.com/s/1IjWBUTku ...
- Docker容器安装配置SQLServer服务(Linux)
一:前言 随着不断的对Docker容器的实践和学习,越来越觉得容器的强大,把 SQL Server 数据库服务放在docker容器中,比你自己在宿主服务器上面安装配置一个SQL Server服务器是要 ...
- Docker容器Centos容器安装openssh
前面在部署容器,使用docker容器作为jenkins的Slave节点时,会发现在使用centos作为镜像源拉去容器,不能正常连接,最后是因为centos的sshd的问题 下面专门是centos容器安 ...
- Docker容器安装RabbitMQ
Docker容器安装RabbitMQ 准备资料 erlang的rpm安装包 https://github.com/rabbitmq/erlang-rpm/releases rabbitmq的rpm安装 ...
- docker——容器安装tomcat
写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...
- Vertica 7.1安装最佳实践(RHEL6.4)
一.前期准备工作 1.1各节点IP和主机名 1.2上传脚本并设定环境变量 1.3添加信任 1.4前期准备检查并调整 二.Vertica安装 三.集群性能评估 一.前期准备工作: 1.1各节点IP和主机 ...
- docker容器安装及使用技巧
关于docker前言 A)首先是关于虚拟化 虚拟化我们可以简单的理解为一种资源管理方式.有如下几种虚拟化的方式: 1.完全虚拟化:对底层硬件实现完全的虚拟.例如:Vmware Workstation ...
- docker容器安装vi (一般容器都是Debian GNU/Linux 9)
在使用docker容器时,同时你docker里的系统正好是debian或ubuntu的时候,有时候里边没有安装vim,敲vim命令时提示说:vim: command not found,这个时候就需要 ...
- Docker 容器安装及常用基础命令
为什么用docker 作为一种新兴的虚拟化方式,Docker 跟传统的虚拟化方式相比具有众多的优势. Docker 在如下几个方面具有较大的优势: 更快速的交付和部署 Docker在整个开发周期都可以 ...
随机推荐
- P2429 【制杖题】
这题目名字也是够了... emmmmmm为什么要用线筛??????不感觉很麻烦吗??????既然是智障制杖题,那么肯定要用很简单的算法啦~下面,我就提供一种非常便于理解的膜你算法~~~很明显,做了这题 ...
- sql回显注入-笔记
拼接sql命令查询数据 注释 常用于sql注入 # 井号 单行注释 注意:URL编码 %23 -- 两个减号加空格 单行注释 /* ...
- 2019JAVA第三次实验报告
Java实验报告 班级 计科二班 学号 20188442 姓名 吴怡君 完成时间 2019.9.24 评分等级 实验三 String类的应用 一.实验目的 掌握类String类的使用: 学会使用JDK ...
- http 中指定head中Content-Encoding属性为gzip 转换过程中的一些问题
项目环境: 对接的服务放在微服务中 提供接口给应用层调用 ,微服务放需要 接受参数 并且转换成压缩格式给 第三方服务 本来以为需要自己压缩,httpclint 中已经封装好了GzipCompressi ...
- String.equals()方法、整理String类的Length()、charAt()、 getChars()、replace()、 toUpperCase()、 toLowerCase()、trim()、toCharArray()
equals 是比较的两个字符串是否一样 length() 返回字符串的长度 charAt (int index) 返回index所指定的字符 getChars(int srcBegin,int sr ...
- 在 IntelliJ IDEA 中使用 Git,太方便了!
git是目前流行的分布式版本管理系统.它拥有两套版本库,本地库和远程库,在不进行合并和删除之类的操作时这两套版本库互不影响.也 因此其近乎所有的操作都是本地执行,所以在断网的情况下任然可以提交代码,切 ...
- 一台 Java 服务器可以跑多少个线程?
一台Java服务器能跑多少个线程? 这个问题来自一次线上报警如下图,超过了我们的配置阈值. 京东自研UMP监控分析 打出jstack文件,通过IBM Thread and Monitor Dump A ...
- HDU 1257 最少拦截系统 最长递增子序列
HDU 1257 最少拦截系统 最长递增子序列 题意 这个题的意思是说给你\(n\)个数,让你找到他最长的并且递增的子序列\((LIS)\).这里和最长公共子序列一样\((LCS)\)一样,子序列只要 ...
- 不要64 数位DP
Problem Description 杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer). 杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来 ...
- 内核中likely和unlikely宏定义
在内核代码中经常会看到unlikely和likely的踪影.他们实际上是定义在 linux/compiler.h 中的两个宏. #define likely(x) __builtin_expec ...