环境搭建

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了环境搭建相关的知识,希望对你有一定的参考价值。

参考技术A 1、先临时性设置虚拟机ip地址:ifconfig eth0 192.168.31.248,在/etc/hosts文件中配置本地ip(192.168.31.248)到host(spark1)的映射

2、配置windows主机上的hosts文件:C:\Windows\System32\drivers\etc\hosts,192.168.31.248 spark1

3、使用Xmanager从windows上连接虚拟机

4、永久性配置CentOS网络

vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

TYPE=Ethernet

ONBOOT=yes

BOOTPROTO=static

IPADDR=192.168.31.248

NETMASK=255.255.255.0

GATEWAY=192.168.56.1

备注:另外两台的ip和domain别为

192.168.31.249(spark2)

192.168.31.250(spark3)

5、重启网卡

service network restart

6、即使更换了ip地址,重启网卡,可能还是联不通网。那么可以先将IPADDR、NETMASK、GATEWAY给删除,将BOOTPROTO改成dhcp。然后用service network restart重启网卡。此时linux会自动给分配一个ip地址,用ifconfig查看分配的ip地址。然后再次按照之前说的,配置网卡,将ip改成自动分配的ip地址。最后再重启一次网卡。

1、关闭防火墙

service iptables stop

chkconfig iptables off

vi /etc/selinux/config

SELINUX=disabled

自己在win7的控制面板中,关闭windows的防火墙!

2、配置dns服务器

vi /etc/resolv.conf

nameserver 8.8.8.8

nameserver 8.8.4.4

验证网络是否正常

ping www.baidu.com

1、修改repo

使用WinSCP(网上很多,自己下一个),将CentOS6-Base-163.repo上传到CentOS中的/usr/local目录下

cd /etc/yum.repos.d/

rm -rf *

mv 自己的repo文件移动到/etc/yum.repos.d/目录中:cp /usr/local/CentOS6-Base-163.repo .

修改repo文件,把所有gpgcheck属性修改为0

2、配置yum

yum clean all

yum makecache

yum install telnet

1、将jdk-7u60-linux-i586.rpm通过WinSCP上传到虚拟机中

2、安装JDK:rpm -ivh jdk-7u65-linux-i586.rpm

3、配置jdk相关的环境变量

vi .bashrc

export JAVA_HOME=/usr/java/latest

export PATH=$PATH:$JAVA_HOME/bin

source .bashrc

4、测试jdk安装是否成功:java -version

5、rm -f /etc/udev/rules.d/70-persistent-net.rules

说明:

1、安装上述步骤,再安装两台一模一样环境的虚拟机,因为后面hadoop和spark都是要搭建集群的。

2、集群的最小环境就是三台。因为后面要搭建ZooKeeper、kafka等集群。

3、另外两台机器的hostname分别设置为spark2和spark3即可,ip分别为192.168.31.249和192.168.31.250

4、在安装的时候,另外两台虚拟机的centos镜像文件必须重新拷贝一份,放在新的目录里,使用各自自己的镜像文件。

5、虚拟机的硬盘文件也必须重新选择一个新的目录,以更好的区分。

6、安装好之后,记得要在三台机器的/etc/hosts文件中,配置全三台机器的ip地址到hostname的映射,而不能只配置本机,这个很重要!

7、在windows的hosts文件中也要配置全三台机器的ip地址到hostname的映射。

1、首先在三台机器上配置对本机的ssh免密码登录

生成本机的公钥,过程中不断敲回车即可,ssh-keygen命令默认会将公钥放在/root/.ssh目录下

ssh-keygen -t rsa

将公钥复制为authorized_keys文件,此时使用ssh连接本机就不需要输入密码了

cd /root/.ssh

cp id_rsa.pub authorized_keys

2、接着配置三台机器互相之间的ssh免密码登录

使用ssh-copy-id -i spark命令将本机的公钥拷贝到指定机器的authorized_keys文件中(方便好用)

--------------------------------------------------------------------------------------------------------------

A为本地主机(即用于控制其他主机的机器) ;

B为远程主机(即被控制的机器Server), 假如ip为192.168.60.110;

A和B的系统都是Linux

在A上运行命令:

# ssh-keygen -t rsa (连续三次回车,即在本地生成了私钥(id_rsa) 与公钥 (id_rsa.pub),不设置密码)

# ssh root@10.9.192.44 "mkdir .ssh" (需要输入密码)

# scp ~/.ssh/id_rsa.pub root@192.168.60.110:.ssh/id_rsa.pub (需要输入密码)

在B上的命令:

# touch /root/.ssh/authorized_keys (如果已经存在这个文件, 跳过这条)

# cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys (将id_rsa.pub的内容追加到authorized_keys 中)

回到A机器:

# ssh root@192.168.60.110 (不需要密码, 登录成功)

A为本地主机(即用于控制其他主机的机器) ;

B为远程主机(即被控制的机器Server), 假如ip为192.168.60.110;

A和B的系统都是Linux

在A上运行命令:

# ssh-keygen -t rsa (连续三次回车,即在本地生成了公钥和私钥,不设置密码)

# ssh test@192.168.60.110 "mkdir .ssh" (需要输入密码)

# scp ~/.ssh/id_rsa.pub test@192.168.60.110:.ssh/id_rsa.pub (需要输入密码)

在B上的命令:

# touch /home/test/.ssh/authorized_keys (如果已经存在这个文件, 跳过这条)

# cat /home/test/.ssh/id_rsa.pub >> /home/test/.ssh/authorized_keys (将id_rsa.pub的内容追加到authorized_keys 中)

修改test/.ssh和authorized_keys的权限

#chmod 700 test

#chmod 700 .ssh

#chmod 600 authorized_keys

回到A机器:

# ssh test@192.168.60.110 (不需要密码, 登录成功)

------------------------------------------------------------------------------------------------------------

flink开发环境搭建maven环境搭建IDEA环境搭建


目录:

 ​​Go To End​


maven环境搭建

  maven 下载:​​https://maven.apache.org/download.cgi​​ ,你也可以使用wget + url 下载。

    命令:wget http://mirrors.advancedhosters.com/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz

    我下载的是3.6.3的版本,目前要求JDK 1.7或更高版本才能执行。

  解压缩:命令:tar zvxf apache-maven-3.6.3-bin.tar.gz

  安装

    这里我先生成了maven-install文件夹,apache-maven-3.6.3文件夹放在此文件夹中,现在修改maven镜像。进入maven的conf文件夹(在bin同级目录下),使用 vim settings.xml 编辑文本,输入反斜杠‘/’,搜索mirrors,按enter定位。设置如下代码:


alimaven
aliyun maven
http://maven.aliyun.com/nexus/content/groups/public/
central

    参考文献:Linux安装maven

  配置环境变量

    我先建立了apache-maven-3.6.3的软连接,命令:ln -s apache-maven-3.6.3 maven

    配置环境变量:sudo vim /etc/profile

      添加如下代码:

#maven
export MAVEN_HOME=/home/elfin/maven-install/maven
export PATH=$PATH:$MAVEN_HOME/bin

    刷新配置:source /etc/profile

  验证maven安装是否成功:mvn -v

  flink开发环境搭建、maven环境搭建、IDEA环境搭建_maven

 

  可以看见已经安装成功了,返回了maven的版本以及Java的版本。

​Back To Top​​​    ​​Go To End​


IDEA环境搭建

  下载安装包,地址:​​https://download-cf.jetbrains.com/idea/ideaIC-2020.1.tar.gz​

  解压缩:tar zvxf idealC-2020.1.tar.gz

  创建桌面快捷方式:

    命令1:touch idea.desktop 生成桌面文件

    命令2:vim idea.desktop  添加代码:

[Desktop Entry]
Name=IntelliJ IDEA
Comment=IntelliJ IDEA
Exec=/home/elfin/idea-install/idea-IC-201.6668.121/bin/idea.sh
Icon=/home/elfin/idea-install/idea-IC-201.6668.121/bin/idea.png
Terminal=false
Type=Application
Categories=Developer;

    其中Exec指向你的启动文件,Icon指向图片。

    命令3:chmod u+x idea.desktop 赋予权限

    flink开发环境搭建、maven环境搭建、IDEA环境搭建_ide_02

 

   图标不正常显示:双击桌面快捷方式,选择信任,图标就正常显示了。 

​Back To Top​​​    ​​Go To End​


flink开发环境搭建

    创建flink项目

  方式一:curl https://flink.apache.org/q/quickstart.sh | bash -s 1.9.2

    你可以打开脚本文件:​​https://flink.apache.org/q/quickstart.sh​​ 代码如下:

#!/usr/bin/env bash

################################################################################
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
################################################################################


PACKAGE=quickstart

mvn archetype:generate \\
-DarchetypeGroupId=org.apache.flink \\
-DarchetypeArtifactId=flink-quickstart-java \\
-DarchetypeVersion=$1:-1.10.0 \\
-DgroupId=org.myorg.quickstart \\
-DartifactId=$PACKAGE \\
-Dversion=0.1 \\
-Dpackage=org.myorg.quickstart \\
-DinteractiveMode=false

#
# Give some guidance
#
echo -e "\\\\n\\\\n"
echo -e "\\\\tA sample quickstart Flink Job has been created."
echo -e "\\\\tSwitch into the directory using"
echo -e "\\\\t\\\\t cd $PACKAGE"
echo -e "\\\\tImport the project there using your favorite IDE (Import it as a maven project)"
echo -e "\\\\tBuild a jar inside the directory using"
echo -e "\\\\t\\\\t mvn clean package"
echo -e "\\\\tYou will find the runnable jar in $PACKAGE/target"
echo -e "\\\\tConsult our website if you have any troubles: http://flink.apache.org/community.html#mailing-lists"
echo -e "\\\\n\\\\n"

    命令使用详情:第一次使用会下载很多包,下载时间较长,需要稍加等待。

    flink开发环境搭建、maven环境搭建、IDEA环境搭建_flink_03

    flink开发环境搭建、maven环境搭建、IDEA环境搭建_maven_04

    flink开发环境搭建、maven环境搭建、IDEA环境搭建_ide_05

    这里面已经默认为你配置好了,但是有时我们想要自己配置,那么我们可以使用方式二。

  方式二:注意 \\ 是终端换行符号,以下代码不能直接复制,因为格式的缘故,可能会出问题。

    $ mvn archetype:generate \\

    -DarchetypeGroupId=org.apache.flink \\

    -DarchetypeArtifactId=flink-quickstart-java \\

    -DarchetypeVersion=1.9.2

    当然可以直接一行写出所有的命令行参数:  

    mvn archetype:generate -DarchetypeGroupId=org.apache.flink -DarchetypeArtifactId=flink-quickstart-java -DarchetypeVersion=1.9.2 -DarchetypeCatalog=internal

    最后一个参数如果不加,你的创建过程可能会非常非常漫长,当然你可以下载相关文件到本地,然后令此参数为local。

  flink开发环境搭建、maven环境搭建、IDEA环境搭建_maven_06

 

  flink开发环境搭建、maven环境搭建、IDEA环境搭建_ide_07

 

  创建成功。我们尝试用命令:mvn archetype:generate -DarchetypeGroupId=org.apache.flink -DarchetypeArtifactId=flink-quickstart-java -DarchetypeVersion=1.9.2 -DarchetypeCatalog=local 创建,同样也成功了。

    IDEA-flink开发环境

  IDEA导入已经创建的环境:打开IDEA之后open对应的项目,在terminal里输入:mvn clean package 打包项目(编译项目),clean是清除之前的打包。

  flink开发环境搭建、maven环境搭建、IDEA环境搭建_ide_08

    核心依赖

  打包时,核心依赖不会进行打包,因为核心依赖要尽可能小,避免冲突,一般运行环境都有这些包。核心依赖包含coordination、networking、checkpoints、failover、APIs、operations、resource management等必须的依赖。

    应用依赖

 

核心依赖、应用依赖等都在porm.xml文件里可以进行配置。

  groupId标签:一般我们设置为域名的顺序倒置,如org.flink

  artifactId标签:可以理解为项目名

  version标签:项目版本号,默认为:1.0-SNAPSHOT

  packaging标签:我这里是jar包,因为使用Java开发

  repositories标签:配置数仓信息,你可以配置公司的信息

  dependencies标签:依赖,包含标签<scope>provided</scope>的是核心依赖,所以不是核心依赖就不要写这个子标签,不然打包时这个依赖不会配置。应用依赖使用的子标签是:<scope>runtime</scope>,注意与核心依赖的区分。

  build标签:是打包编译时要配置的插件

​Back To Top​​​    ​​Go To End​


清澈的爱,只为中国

以上是关于环境搭建的主要内容,如果未能解决你的问题,请参考以下文章

如何搭建Appium测试环境

LNMP环境的搭建与配置(二)

如何搭建MTK6261的开发环境

AndroidStudio 离线环境搭建

如何搭建android运行环境

环境搭建文档——Windows下的Python3环境搭建