前几天写了文章“Hadoop 集群搭建”之后,一个朋友留言说希望介绍下如何使用Docker部署,这个建议很好,Docker不仅在生产环境威力巨大,对于我们在自己电脑中搭建学习实验环境更是非常便利 搭建一个集群环境时需要多台服务器,对于我们个人,这通常是个门槛,需要使用虚拟机,安装操作系统,然后运行起来多个虚机 安装操作系统是个不太轻松的任务,并且运行多个虚机对个人电脑性能也有一定要求,这些门槛影响了很多小伙伴的实践积极性 使用Docker的话就简单了,不用安装操作系统,直接下载一个镜像,如centos,这样
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Mrqiang9001/article/details/78308830
在管理自己的代码的时候,我一直使用github。有的时候,私有项目不想公开,如果还要放到GitHub上,那就必须要花钱。解决这个问题的方法其实也很简单:在自己电脑上用虚拟机(VirtualBox)跑一个服务器(CentOS),配置好ssh和git server。正所谓:史上距离你最近的服务器。
默认从docker hub中下载的Centos镜像是没有安装Openssh功能,不提供ssh服务的。
在centOS系统本地安装cpolar内网穿透之后,在外部浏览器上访问centOS本地9200端口,访问方式:局域网ip+:9200,打开cpolar web ui界面。
yum install -y yum-utils #安装工具包,缺少这些依赖将无法完成
mac发布了m1芯片,其强悍的性能收到很多开发者的追捧,但是也因为其架构的更换,导致很多软件或环境的安装成了问题,今天就来谈谈如何在m1中安装linux虚拟机
欢迎与我分享你的看法。 转载请注明出处:http://taowusheng.cn/
近期对IDC机房服务器做了一次安全漏洞扫描,漏扫结果显示服务器的OpenSSH版本太低(CentOS6默认是OpenSSH_5.3p1),存在漏洞隐患,安全部门建议升级到OpenSSH_7.6p1。升级OpenSSH的操作并不复杂,但由于是线上环境,故需要谨慎操作。特别需要注意的是:如果是通过ssh远程连接服务器后进行的版本升级操作,万一升级失败了,则ssh就远程登录不上去了。当然,如果服务器安装了iDRAC远程管理卡就好说了,如果没有iDRAC远程管理卡,则需要提前开启telnet远程登录(允许root账号登录)或是到机房现场进行升级操作比较妥当!
image.png 之前已经为Docker配置好了ssh服务,并创建好了带有SSH服务器的镜像,这里在此基础上安装nginx服务器,使外部可以访问容器中的nginx服务 思路 (1)通过ssh登录容器,安装nginx服务器 (2)创建新的nginx镜像 (3)基于新镜像启动容器,测试nginx服务 操作 (1)安装nginx 启动容器,启动时打开ssh的22端口 docker run -d -p 22 dys/centos:ssh 执行 docker ps 命令,查看 22 对应主机的端口号,我这里是103
macos作为开发环境已经相当方便,有很丰富的工具,如homebrew类似于ubuntu的apt-get和centos的yum,很方便地安装各种开发工具。但终究与线上生产环境不同,即便安装的是相同的软件,安装目录,管理方式都有所不同。当项目很复杂,或者有多个项目时,很容易将mac本地环境弄得乱七八糟。
其中 <容器ID> 为刚才启动的容器 ID,<新的镜像名> 是保存更改后的新的镜像名称和标签,例如 centos-ssh:7.9.2009。
方便我们后续的无密码登陆别的机器,例如要登陆Hadoop、spark、hive等等,也方便我们在公司使用多台服务器。
vscode有远程开发功能,即可以在windows打开vscode,连接上linux服务器写代码 但由于公司集群登录节点是centos6,官方表示centos6需要升级glibc和libstdc++,没有管理员权限,只能找一台centos7的计算节点,想办法跳过登录节点
下载 VirtualBox 和Vagrant ,并安装 为什么我们要选择Vagrant呢?因为它有跨平台、可移动、自动化部署无需人工参与等优点。 VirtualBox 安装 VirtualB
由于 Hadoop 是为集群设计的软件,所以我们在学习它的使用时难免会遇到在多台计算机上配置 Hadoop 的情况,这对于学习者来说会制造诸多障碍,主要有两个:
CentOS Stream 9通过配置sshd_config中AllowUsers实现SSH访问控制
Vagrant 安装完成以后会默认把 Home 目录设为C:\Users\用户名.vagrant.d,然后所有的相关文件如 boxes 都会放在这里,因此需要配置系统的环境变量如下:
注:主机名修改后需要重启机器才可彻底生效。如果用户不想重启,可使用命令 hostnamectlset-hostname node1.ambari.com来修改主机名,可使用命令 hostname来检验主机名是否修改成功。这种修改方式只是暂时的,待机器重启后就恢复原样 localhost了。
Mac下使用虚拟机时,通过vagrant+virtualbox的组合是个不错的方案,简便快捷;
因为docker中容器的ip通常来说是和真机以及centos7的ip不属于一个网段,因此直接访问是不可通的。 如图,首先用真机ping容器
鉴于国内网络问题,拉取Docker镜像十分缓慢,在安装之前需要先设置成国内镜像,可以加速。
平时工作一直在Linux上做开发,Docker用的比较多,最近要用Vagrant搭建Linux开发环境,所以用了一下,整理一些资料。
3台主机:1个master、2个slaver/worker ip地址使用docker默认的分配地址:
在Python开发中经常会碰到一些棘手的环境问题,例如:如果开发环境是windows,那么在开发ansible模块的时候,而ansible模块又一般都是安装在linux系统,这时候在windows开发就不好处理了。
如果手工安装Hadoop集群,在管理和后继部署中,越来越多的问题不断出现,主要如下:
名称:为了区分服务器,名字随便起协议:默认ssh就好主机:CentOS系统所在的机器的IP地址端口:默认22就可以重新连接:有需要可以勾选上,当连接意外断开后,xshell会自动重新进行连接
1、用户APP采用JAVA环境布署,初始环境两台服务器,实现负载均衡与高可用,前端负载使用nginx 做负载
我们把Centos7安装在虚拟机上,有时虚拟机和主机不停地切换并不方便,或者Linux主机没在身边,这时就需要远程登录了,常用的远程登录有SSH和VNC,其中SSH是命令行的,没有图形界面,VNC有图形界面。
我自己的云服务器是 Ubuntu 系统,自己之前使用的本机虚拟机也都是 Ubuntu 系统,但是一般公司使用的多半是 CentOS 或者其他类似的系统,很少使用 Ubuntu 系统,而且我们公司也都是使用的基于 CentOS 的系统,所以为了更方便于自己将学到的东西应用到工作中,决定开始使用 CentOS 的虚拟机。
1、在docker中安装CentOS镜像,并启动centos容器,安装ssh。--详见"docker上安装centos镜像"一文。
安装虚拟机,IP地址192.168.52.129、主机名称centos、内存4G、硬盘50G
Centos7初始化脚本 初始化脚本 进入centos7系统,使用脚本 # wget https://gitee.com/funet8/centos6_LANP_dockerfile/raw/master/shell/CentOS7.x_system_init_shell_mini.sh 修改hostname和端口 HOSTNAME="node2" SSH_PROT="60920" 执行脚本: # sh CentOS7.x_system_init_shell_mini.sh 功能介绍: # 1、
重新使用 vagrant up 启动机器即可。然后再 vagrant ssh 连接机器
[root@ansible-server etc]# lsb_release -a
在 CentOS/RHEL 和 Fedora 系统中允许 wheel 组中的用户执行所有的命令。使用 usermod 命令将用户 vivek 添加到 wheel 组中:
用的是Vmvare,镜像是Centos7,CentOS-7-x86_64-LiveKDE-1810版本。
yum是基于rpm的软件包管理器,他可以使系统管理人员交互和自动化地更细与管理rpm包,他能自动从服务器下载RPM包并安装,他可以自动处理依赖关系,自动安装所有需要的软件包
dockerhub 官网提供了 php7.4 fpm 官方镜像(参见 https://hub.docker.com/_/php/tags?page=1&name=7.4-fpm-alpine),其中有 alpine 版本只要几十兆,但这样的镜像基础工具很少,项目内需安装一些额外扩展还是很费劲,本着简单实用原则,自己编写了下述 Dockerfile 便于快速创建出基于 centos 系统的 php docker 环境并支持 ssh 登录
在文章开始之前先说一个好消息: 年前会有一次视频分享,所有视频都已经归类,另外还有一次赠书活动,敬请期待。
下载链接: https://pan.baidu.com/s/1rlqZejpZZqio9RPzgnGOEg 提取码: j47n ;内有jdk-8u151-linux-x64.tar.gz和mysql-connector-java.jar文件。
使用VMware登录正常,密码也是正确的。 然后使用远程连接工具连接,一直显示错误。 说明没有开启远程:
java项目做好后,最终部署时,通常是通过SecureCRT(或其它终端)连接linux上传war包来进行。学几个基本的linux命令还是必要的。 一、CentOS上的SSH设置 1.1 终端窗口下,以root身份登录,修改hosts.allow,允许用户远程连接 vi /etc/hosts.allow 按 i 键切换到 insert模式,在最后一行加一句 sshd:ALL 然后按ESC返回命令模式,然后再按:进行末行模式,最后输入x 保存退出(注:如果保存时,提示文件只读,可以尝试 chmod +w ho
我这里创建了一个普通用户名为admin,并且具有sudo权限,4个节点都需要有这个用户。
1.1 CentOS 6 1) vi /etc/sysconfig/network-scripts/ifcfg-eth0 ONBOOT=yes BOOTPROTO=static IPADDR=192.168.153.136 NETMASK=255.255.255.0 GATEWAY=192.168.153.2(网关在虚拟机网络编辑器->NET设置中可以看到) DNS1=192.168.153.2 2) service network restart 3) ifconfig,查看IP是否配置好 4) ping www.baidu.com,验证是否可以访问外网
仅适用于CentOS 添加用户 useradd dingdayu -g users 配置用户密码 passwd dingdayu 添加sudo权限 先添加文件写权限 chmod u+w /etc/sudoers 修改文件 vi /etc/sudoers # root ALL=(ALL) ALL 移除文件写权限 chmod u-w /etc/sudoers 另一种方法: sudo usermod -aG wheel $USER 免密也需要设置这个,如果设置免密的话,可以跳过
这篇文章之前也写过类似的,已经有很多人在看了,也有很多朋友在这过程中碰到了困难,私聊我。为了提高各自的工作效率,所以我又将文章完善了一版,这应该算是第三版了。
发起连接的一方,计算机或设备(称为客户端)与另一个计算机或设备(称为远程服务器)建立连接。
Dropbear是一个相对较小的SSH服务器和客户端。它运行在各种基于POSIX的平台上。Dropbear是一种开源软件,以MIT风格的许可证分发。Dropbear对于“嵌入”型Linux(或其他Unix)系统(如无线路由器)特别有用。
GitLab有CI和CD功能模块,但我对Jenkins更熟悉些,所以先使用Jenkins将自动发布搭建起来,后面再继续研究GitLab的CI和CD功能。
领取专属 10元无门槛券
手把手带您无忧上云