金沙澳门官网网址_金沙国际登陆

欢迎加入金沙澳门官网网址体验更多不一样的精彩.,金沙国际登陆提供最丰厚回馈!,因为金沙澳门官网网址这里的游戏是多种多样的,为大家打造一个最专业的化的超级五星酒店。

金沙澳门官网网址 > 金沙澳门官网网址 > 多实例安装,卡夫卡的单节点配置

原标题:多实例安装,卡夫卡的单节点配置

浏览次数:65 时间:2019-12-04

转载来源:

Zookeeper+Kafka的单节点配置

环境描述:Ubuntu16.04 server系统,在系统上搭建Java环境,jdk的版本为1.8或更高,我的服务器IP地址为192.168.0.106。

 

1. 使用命令在根目录下的opt目录下创建data目录。

mkdir /opt/data

 

  1. 在Apache官网http://www.apache.org/dyn/closer.cgi/zookeeper/和https://www.apache.org/dyn/closer.cgi?path=/kafka/0.10.0.0/kafka_2.10-0.10.0.0.tgz

上下载zookeeper和kafka的压缩包,我下载的是zookeeper-3.4.10.tar.gz和kafka_2.11-0.10.1.0.gz。

 

3. 使用命令对zookeeper和kafka压缩文件进行解压,对解压后的文件进行改名和移动位置,移动到/opt/data目录下。

tar -zxvf zookeeper-3.4.10.tar.gz
tar -zxvf kafka_2.11-0.10.1.0.gz

图片 1

 

4. 使用命令增加zookeeper节点的IP如下附图所示。

vim /etc/hosts

图片 2

 

  1. 使用命令

    cd /opt/data/zookeeper/conf

进入zookeeper目录下的conf目录,使用命令

cp zoo_sample.cfg zoo.cfg

复制文件zoo.cfg,使用命令

vim zoo.cfg

修改该文件。同时,在/opt/data/zookeeper下创建data目录和logs目录,在/opt/data/zookeeper/data下创建文件myid,使用命令

echo 1 > myid

在文件myid中写入1。

 图片 3

 

============================================================================================================================================

在此zookeeper的配置已经完成。

============================================================================================================================================

 

  1. 使用命令

    vim /opt/data/kafka/config/server.properties

修改kafka的配置文件,同时使用命令

mkdir /opt/data/kafka/kafka-logs

创建目录,修改内容如下附图所示。

图片 4

图片 5

 

============================================================================================================================================

在此kafka的配置已经完成。

============================================================================================================================================

 

测试zookeeper和kafka的配置是否成功:

1. 启动zookeeper:在/opt/data/zookeeper目录下使用命令

bin/zkServer.sh start

启动zookeeper。使用命令

bin/zkServer.sh status

查看zookeeper的状态,如果现实如下图所示的状态表示zookeeper配置成功。

图片 6

 

 

2.启动kafka:在/opt/data/kafka目录下使用命令

bin/kafka-server-start.sh config/server.properties

启动kafka,显示以下信息为成功启动kafka。

图片 7

 

3. 创建会话topic:打开新的终端(我们暂记为终端1),在/opt/data/kafka目录下使用命令

bin/kafka-topics.sh --create --zookeeper 192.168.0.106:2181 --replication-factor 1 --partitions 1 --topic test1

创建会话test1,使用命令

bin/kafka-topics.sh --list --zookeeper 192.168.0.106:2181

查看会话列表,显示以下信息为成功创建会话。

图片 8

 

4.启动生产者Producer发消息:在/opt/data/kafka目录下使用命令

bin/kafka-console-producer.sh --broker-list 192.168.0.106:9092 --topic test1

启动消息生产者。

 

5.启动消费者Consumer接收消息:再打开一个新的终端(我们暂记为终端2),在/opt/data/kafka目录下使用命令

bin/kafka-console-consumer.sh --bootstrap-server 192.168.0.106:9092 --from-beginning --topic test1

来接收消息。

 

6.在生产者Producer所在的终端1里随便输入一些内容,消费者Consumer所在的终端2将会实时的捕获终端1里发出的消息。如下表示成功建立会话,kafka和zookeeper的单节点配置圆满成功。

图片 9

图片 10

 

7.删除会话topic:在/opt/data/kafka目录下使用命令

bin/kafka-topics.sh --delete --zookeeper 192.168.0.106:2181 --topic test1

再使用命令

bin/kafka-topics.sh --list --zookeeper 192.168.0.106:2181

查看会话是否存在,如下图所示,表示会话test1删除成功。

图片 11

 

在生产中有时候会遇到一台主机要运行多个MySQL服务器----叫做多实例

一、安装Oracle前准备

下面演示多实例的安装

1.创建运行oracle数据库的系统用户和用户组

首先我们规划下

<code class="language-plain">[humf@localhost ~]$ su root  #切换到root
Password: 
[root@localhost sonny]# groupadd oinstall  #创建用户组oinstall
[root@localhost sonny]# groupadd dba  #创建用户组dba
[root@localhost sonny]# useradd -g oinstall -g dba -m oracle  #创建oracle用户,并加入到oinstall和dba用户组
[root@localhost sonny]# passwd oracle  #设置用户oracle的登陆密码,不设置密码,在CentOS的图形登陆界面没法登陆
Changing password for user oracle.
New password:   # 密码
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:   # 确认密码
passwd: all authentication tokens updated successfully.
[root@localhost sonny]# id oracle # 查看新建的oracle用户
uid=1001(oracle) gid=1002(dba) groups=1002(dba)
[root@localhost sonny]# </code>

图片 12

理论上单例按照需要3种用户组,实际只建两个oinstall和dba,后面再安装oracle数据库的时候把OSOPER组也设置是dba组。

基于二进制安装

1、创建mysql用户

useradd -r -s /sbin/nologin -d /app/mysql -m mysql
#
#

2、解压下载的二进制mariadb包

tar xvf mariadb-10.2.16-linux-x86_64.tar.gz -C /usr/local/
#
#

3、创建软连接

cd /usr/local/
#
ln -s mariadb-10.2.16-linux-x86_64/ mysql
#

4、修改权限

chown -R root.mysql /usr/local/mysql/
#
#

5、环境变量(少了这步也可)

vim /etc/profile.d/mysql.sh
# 
. /etc/profile.d/mysql.sh
#

如果你已经二进制安装了mariadb包,可以从以下开始

a.oracle 清单组(一般为oinstall):

指定数据库位置并初始化数据库

1、创建规划图上的目录

mkdir /mysqldb/{3306,3307,3308}/{etc,bin,data,pid,socket,log} -pv
#
#

2、更改主目录mysqldb的属性

chown -R mysql.mysql /mysqldb/
#

3、3306端口

cd /usr/local/mysql/
#
scripts/mysql_install_db  --datadir=/mysqldb/3306/data --user=mysql
#

4、3307端口

scripts/mysql_install_db  --datadir=/mysqldb/3307/data --user=mysql
#

5、3308端口

scripts/mysql_install_db  --datadir=/mysqldb/3308/data --user=mysql
#

OINSTALL 组的成员被视为 Oracle 软件的“所有者”,拥有对 Oracle 中央清单 (oraInventory) 的写入权限。在一个 Linux 系统上首次安装 Oracle 软件时,

修改配置文件

1、复制配置文件

cp /etc/my.cnf /mysqldb/3306/etc/
#

2、编辑配置文件

vim /mysqldb/3306/etc/my.cnf 
#

图片 13

3、把上面的配置文件当模板传送给3307、3308

cp /mysqldb/3306/etc/my.cnf  /mysqldb/3307/etc/
cp /mysqldb/3306/etc/my.cnf  /mysqldb/3308/etc/
#

4、更改07、08配置文件的端口

sed -i 's/3306/3307/g' /mysqldb/3307/etc/my.cnf 
sed -i 's/3306/3308/g' /mysqldb/3308/etc/my.cnf 
#

OUI 会创建 /etc/oraInst.loc 文件。该文件指定 Oracle 清单组的名称(默认为 oinstall)以及 Oracle 中央清单目录的路径。

启动程序

1、把事先编写的启动脚本复制到06、07、08的bin目录下

cp /root/mysqld /mysqldb/3306/bin/
cp /root/mysqld /mysqldb/3307/bin/
cp /root/mysqld /mysqldb/3308/bin/
#

2、更改7、8的启动脚本进程号为自己的

vim /mysqldb/3307/bin/mysqld
#07的改为3307
vim /mysqldb/3308/bin/mysqld
#08的改为3308

图片 14

3、给启动脚本加执行权限

chown +x /mysqldb/3306/bin/mysqld 
chmod +x /mysqldb/3306/bin/mysqld 
chmod +x /mysqldb/3307/bin/mysqld 
chmod +x /mysqldb/3308/bin/mysqld
#

4、启动服务脚本

/mysqldb/3306/bin/mysqld start
#
/mysqldb/3307/bin/mysqld start
#
/mysqldb/3308/bin/mysqld start

5、ss -ntl查看

图片 15

b.数据库管理员(OSDBA,一般为 dba):

数据库加固

1、给数据库root用户加密码

mysqladmin  -S /mysqldb/3306/socket/mysql.sock password 'centos'
mysqladmin  -S /mysqldb/3307/socket/mysql.sock password 'centos'
mysqladmin  -S /mysqldb/3308/socket/mysql.sock password 'centos'

2、进入数据库删除匿名登陆

mysql -S /mysqldb/3306/socket/mysql.sock -uroot -p
#

select user,host from mysql.user;
#查看有哪些用户
delete from mysql.user where user='';
#删除匿名用户

OK

exit 重新进入 ,如果不行,就重启下服务

OSDBA 组的成员可通过操作系统身份验证使用 SQL 以 SYSDBA 身份连接到一个 Oracle 实例。该组的成员可执行关键的数据库管理任务,如创建数据库、启动和关

附加启动脚本代码

#!/bin/bash

port=3306
mysql_user="root"
mysql_pwd=""
cmd_path="/usr/local/bin"
mysql_basedir="/mysqldb"
mysql_sock="${mysql_basedir}/${port}/socket/mysql.sock"

function_start_mysql()
{
    if [ ! -e "$mysql_sock" ];then
      printf "Starting MySQL...n"
      ${cmd_path}/mysqld_safe --defaults-file=${mysql_basedir}/${port}/etc/my.cnf  &> /dev/null  &
    else
      printf "MySQL is running...n"
      exit
    fi
}


function_stop_mysql()
{
    if [ ! -e "$mysql_sock" ];then
       printf "MySQL is stopped...n"
       exit
    else
       printf "Stoping MySQL...n"
       ${cmd_path}/mysqladmin -u ${mysql_user} -p${mysql_pwd} -S ${mysql_sock} shutdown
   fi
}


function_restart_mysql()
{
    printf "Restarting MySQL...n"
    function_stop_mysql
    sleep 2
    function_start_mysql
}

case $1 in
start)
    function_start_mysql
;;
stop)
    function_stop_mysql
;;
restart)
    function_restart_mysql
;;
*)
    printf "Usage: ${mysql_basedir}/${port}/bin/mysqld {start|stop|restart}n"
esac

闭实例。该组的默认名称为dba。SYSDBA 系统权限甚至在数据库未打开时也允许访问数据库实例。对此权限的控制完全超出了数据库本身的范围。不要混淆 SYSDBA

系统权限与数据库角色 DBA。DBA 角色不包括 SYSDBA 或 SYSOPER 系统权限。

c.数据库操作员组(OSOPER,一般为 oper):

OSOPER 组的成员可通过操作系统身份验证使用 SQL 以 SYSOPER 身份连接到一个 Oracle 实例。这个可选组的成员拥有一组有限的数据库管理权限,如管理和运行备份。

该组的默认名称为oper。SYSOPER 系统权限甚至在数据库未打开时也允许访问数据库实例。对此权限的控制完全超出了数据库本身的范围。要使用该组,选择 Advanced 安装类型来安装 Oracle 数据库软件。

2.修改操作系统核心参数

在Root用户下执行以下步骤:

1)修改用户的SHELL的限制,修改/etc/security/limits.conf文件

输入命令:vi /etc/security/limits.conf,按i键进入编辑模式,将下列内容加入该文件。

<code class="language-plain">oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536</code>

编辑完成后按Esc键,输入“:wq”存盘退出

2)修改/etc/pam.d/login 文件,输入命令:vi /etc/pam.d/login,按i键进入编辑模式,将下列内容加入该文件。

<code class="language-plain">session required /lib/security/pam_limits.so
session required pam_limits.so
</code>

编辑完成后按Esc键,输入“:wq”存盘退出

3)修改linux内核,修改/etc/sysctl.conf文件,输入命令: vi /etc/sysctl.conf ,按i键进入编辑模式,将下列内容加入该文件

<code class="language-plain">fs.file-max = 6815744

fs.aio-max-nr = 1048576

kernel.shmall = 2097152

kernel.shmmax = 2147483648

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 4194304

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048576</code>

编辑完成后按Esc键,输入“:wq”存盘退出

4)要使 /etc/sysctl.conf 更改立即生效,执行以下命令。 输入:sysctl -p 显示如下:

<code class="language-plain">linux:~ # sysctl -p

net.ipv4.icmp_echo_ignore_broadcasts = 1

net.ipv4.conf.all.rp_filter = 1

fs.file-max = 6815744

fs.aio-max-nr = 1048576

kernel.shmall = 2097152

kernel.shmmax = 2147483648

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 4194304

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048576</code>

5)编辑 /etc/profile ,输入命令:vi /etc/profile,按i键进入编辑模式,将下列内容加入该文件。

<code class="language-plain">if [ $USER = "oracle" ]; then

if [ $SHELL = "/bin/ksh" ]; then

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n 65536

fi

fi</code>

编辑完成后按Esc键,输入“:wq”存盘退出

6)创建数据库软件目录和数据文件存放目录,目录的位置,根据自己的情况来定,注意磁盘空间即可,这里我把其放到oracle用户下,例如:

输入命令:

<code class="language-plain">mkdir /home/oracle/app

mkdir /home/oracle/app/oracle

mkdir /home/oracle/app/oradata

mkdir /home/oracle/app/oracle/product</code>

7)更改目录属主为Oracle用户所有,输入命令:

<code class="language-plain">chown -R oracle:oinstall /home/oracle/app</code>

8)配置oracle用户的环境变量,首先,切换到新创建的oracle用户下,

输入:su – oracle ,然后直接在输入 : vi .bash_profile

按i编辑 .bash_profile,进入编辑模式,增加以下内容:

<code class="language-plain">export ORACLE_BASE=/home/oracle/app

export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1

export ORACLE_SID=orcl

export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib</code>

编辑完成后按Esc键,输入“:wq”存盘退出

ps:我的云服务器没有防火墙,如果你们有,可以关闭

--关闭防火墙 CentOS 7.2默认使用的是firewall作为防火墙

<code class="language-plain">[humf@localhost /]$ su root
Password: 
[root@localhost /]# systemctl status firewalld.service  #查看防火墙状态,运行中
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2016-04-07 18:54:29 PDT; 2h 20min ago
 Main PID: 802 (firewalld)
   CGroup: /system.slice/firewalld.service
           └─802 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid


Apr 07 18:54:25 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon...
Apr 07 18:54:29 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon.
[root@localhost /]# systemctl stop firewalld.service  #关闭防火墙
[root@localhost /]# systemctl status firewalld.service  #再次查看防火墙状态,发现已关闭
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: inactive (dead) since Thu 2016-04-07 21:15:34 PDT; 9s ago
 Main PID: 802 (code=exited, status=0/SUCCESS)


Apr 07 18:54:25 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon...
Apr 07 18:54:29 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon.
Apr 07 21:15:33 localhost systemd[1]: Stopping firewalld - dynamic firewall daemon...
Apr 07 21:15:34 localhost systemd[1]: Stopped firewalld - dynamic firewall daemon.
[root@localhost /]# systemctl disable firewalld.service  #禁止使用防火墙(重启也是禁止的)
Removed symlink /etc/systemd/system/dbus-org.Fedoraproject.FirewallD1.service.
Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.
[root@localhost /]# </code>

防火墙先禁用,搞好之后再配置,个人虚拟机,要毛线防火墙~~

6.关闭selinux(需重启生效)

<code class="language-plain">[root@localhost /]# vi /etc/selinux/config
[root@localhost /]# cat /etc/selinux/config


# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled   #此处修改为disabled
# SELINUXTYPE= can take one of three two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected. 
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted 


[root@localhost /]# </code>

为啥要关闭selinux?因为selinux太高深,非专业人士搞不懂~~

二、正式Oracle的安装过程

1)当上述系统要求操作全部完成后,注销系统,在图形界面以Oracle用户登陆。

PS:对于不会用图形界面的这边教你怎么用Windows远程连接Oracle图形界面

 前提:

2.1.1 CentOS已经安装桌面,如果无桌面,请执行 (yum不会的可以百度,这边不赘述了)

<code class="language-plain">  # yum -y groups install "GNOME Desktop"
  # startx</code>

2.1.2 配置源

<code class="language-plain">  # yum install  epel* -y</code>

2.1.3 安装xrdp

<code class="language-plain">  # yum --enablerepo=epel -y install xrdp</code>

2.1.4 启动xrdp并设置开机启动

本文由金沙澳门官网网址发布于金沙澳门官网网址,转载请注明出处:多实例安装,卡夫卡的单节点配置

关键词:

上一篇:【金沙澳门官网网址】分享三个是因为KDE未被科

下一篇:常用命令,自定义仓库【金沙澳门官网网址】