多台云主机的如何实现一键自动部署发布?

多台云主机的如何实现一键自动部署发布?,第1张

1、修改用户名和密码右击我的电脑-管理,然后在弹出的计算机管理界面中,点击“本地用户和组”在右侧找到你登录时候用的用户名,右击-设置密码即可设置该用户名的新密码,如果修改用户名可以右击-重命名即可修改。

2、磁盘管理右击我的电脑-管理,然后在弹出的计算机管理界面中,点击“磁盘管理”右侧黑色的代表为指派的磁盘空间右击黑色未指派磁盘-新建磁盘分区-新建磁盘分区向导-选折主磁盘分区(大小根据需求设置)-指派磁盘驱动器号-执行快速格式化-完成。更改盘符的卷标-右击该盘符-更改驱动器号和路径-指派驱动器号。

3、更改3389远程登录端口 Windows默认的远程登录端口是3389,有的时候为了安全考虑,需要更改远程端口。点击开始-运行-输入regedit打开注册表编辑器,由于注册表上有很多信息,最简单的方法寻找需要修改端口的地方,键盘ctrl+F,弹出搜索框,输入Portnumber进行查找,可能会搜到几处选项,注意查找值为3389的名称。需要修改的地方有两个-双击portnumber,选择十进制,将3389更改为别的数字,最好是越大越好,当然在65535之内,因为大的数字别的程序占用的几率比较小。

4、防火墙安全配置修改完成后,一定要查看本地的防火墙用没有打开,如果打开,需要在防火墙中将修改后的端口添加到例外。右键网上邻居-选择属性-网络连接-右键本地连接-属性-高级-设置,打开windows防火墙,选择例外选项。

在web服务器部署一个网站的方法

一般在安装操作系统时不默认安装IIS,所以在第一次配置Web服务器时需要安装IIS。安装方法为:

1、打开“控制面板”,打开“添加/删除程序”,弹出“添加/删除程序”窗口。

2、单击窗口中的“添加/删除Windows组件”图标,弹出“Windows组件向导”对话框。

添加/删除程序

3、选中“向导”中的“应用程序服务器”复选框。单击“详细信息”按钮,弹出“应用程序服务器”对话框。

添加/删除Windows组件

4、选择需要的组件,其中“Internet信息服务(IIS)”和“应用程序服务器控制台”是必须选中的。选中“Internet信息服务(IIS)”后,再单击“详细信息”按钮,弹出“Internet信息服务(IIS)”对话框。

5、选中“Internet信息服务管理器”和“万维网服务”。并且选中“万维网服务”后,再单击“详细信息”按钮,弹出“万维网服务”对话框。

6、其中的“万维网服务”必须选中。如果想要服务器支持ASP,还应该选中“ActiveServerPages”。逐个单击“确定”按钮,关闭各对话框,直到返回图1的“Windows组件向导”对话框。

7、单击“下一步”按钮,系统开始IIS的安装,这期间可能要求插入WindowsServer2003安装盘,系统会自动进行安装工作。

8、安装完成后,弹出提示安装成功的对话框,单击“确定”按钮就完成了IIS的安装。

友情提示:如果想要同时装入FTP服务器,在“Internet信息服务(IIS)”对话框中应该把“文件传输协议(FTP)服务”的复选框也选中。

在IIS中创建Web网站

打开“Internet信息服务管理器”,在目录树的“网站”上单击右键,在右键菜单中选择“新建→网站”,弹出“网站创建向导”:

网站描述就是网站的名字,它会显示在IIS窗口的目录树中,方便管理员识别各个站点。本例中起名为“枝叶的网站”。

网站IP地址:如果选择“全部未分配”,则服务器会将本机所有IP地址绑定在该网站上,这个选项适合于服务器中只有这一个网站的情况。也可以从下拉式列表框中选择一个IP地址(下拉式列表框中列出的是本机已配置的IP地址,如果没有,应该先为本机配置IP地址,再选择。)

TCP端口:一般使用默认的端口号80,如果改为其它值,则用户在访问该站点时必须在地址中加入端口号。

主机头:如果该站点已经有域名,可以在主机头中输入域名。

主目录路径是网站根目录的位置,可以用“浏览”按钮选择一个文件夹作为网站的主目录。

网站访问权限是限定用户访问网站时的权限,“读取”是必需的,“运行脚本”可以让站点支持ASP,其它权限可根据需要设置。

单击“下一步”,弹出“完成向导”对话框,就完成了新网站的创建过程,在IIS中可以看到新建的网站。把做好的网页和相关文件复制到主目录中,通常就可以访问这个网站了。

访问网站的方法是:如果在本机上访问,可以在浏览器的地址栏中输入“”,则用户访问“/pic/文件1”时,访问的实际位置是服务器的“D:myimage文件1”,所以虚拟目录的真实名字和位置对用户是不可知的。

创建虚拟目录的方法:

打开Internet信息服务窗口,在想要创建虚拟目录的Web站点上单击右键,选择“新建”→“虚拟目录”。弹出虚拟目录创建向导:

别名是映射后的名字,即客户访问时的名字;

路径:服务器上的真实路径名,即虚拟目录的实际位置;

访问权限:指客户对该目录的访问权限。

单击“下一步”按钮,弹出完成对话框,虚拟目录就建立成功了。把相关文件复制到虚拟目录中,用户就可以按照虚拟的树形结构访问到指定文件了。

通常虚拟目录的访问权限、默认文档等都继承自主目录,如果需要修改,可在“Internet信息服务管理器”中的虚拟目录上单击右键,选择“属性”,就可以修改虚拟目录的参数设置了。

以下是一个简单的安装方法。 $ sudo add-apt-repository ppa:webupd8team/java $ sudo apt-get update $ sudo apt-get install oracle-java8-installer $ java -version java version "180_60" Java(TM) SE Runtime Environment (build 180_

Tomcat服务器 具有一个常用的功能: 即自动编译,自动发布,自动部署功能

问题: 当我们第一次发布程序以后,我们增删改Servelt,Java,xml等文件,都必须重启Tomcat,如果项目巨大,那么

这是在浪费时间!

分析: Tomcat 自带了自动部署功能,只要我们在Tomcat安装目录下的Serverxml中的<host>中添加<context>标

签即可

实例: Tomcat安装目录: C:\Program Files\Apache Software Foundation\Tomcat 60\conf 下的serverxml中

的<host>标签中添加如下代码:

<Context path="" reloadable="true" docBase="E:\code_center\my_code\eclipse_code\TomcatTest\WebRoot"/>

配置文件解析:

path : 此项目的发布路径为空即为http://localhost:8080为该项目默认的路径,取消了项目名

reloadable: 是否在程序文件改变的时候重新加载

docBase: 源文件的配置文件页面和已编辑的文件存在的目录,一般都到WebRoot下

设置服务器为debug模式(debug onserver),否则修改不起作用

第一步 - 安装 Java OpenJDK 7

Jenkins 基于 Java,因此我们需要在服务器上安装 Java OpenJDK 7。在这里,我们会从一个 PPA 仓库安装 Java 7,首先我们需要添加这个仓库。

默认情况下,Ubuntu 1604 没有安装用于管理 PPA 仓库的 python-software-properties 软件包,因此我们首先需要安装这个软件。使用 apt 命令安装 python-software-properties。

apt-get install python-software-properties

下一步,添加 Java PPA 仓库到服务器中。

add-apt-repository ppa:openjdk-r/ppa

用 apt 命令更新 Ubuntu 仓库并安装 Java OpenJDK。

apt-get update

apt-get install openjdk-7-jdk

输入下面的命令验证安装:

java -version

你会看到安装到服务器上的 Java 版本。

第二步 - 安装 Jenkins

Jenkins 给软件安装包提供了一个 Ubuntu 仓库,我们会从这个仓库中安装 Jenkins。

用下面的命令添加 Jenkins 密钥和仓库到系统中。

wget -q -O - https://pkgjenkinsio/debian-stable/jenkinsiokey | sudo apt-key add -

echo 'deb https://pkgjenkinsio/debian-stable binary/' | tee -a /etc/apt/sourceslist

更新仓库并安装 Jenkins。

apt-get update

apt-get install jenkins

安装完成后,用下面的命令启动 Jenkins。

systemctl start jenkins

通过检查 Jenkins 默认使用的端口(端口 8080)验证 Jenkins 正在运行。我会像下面这样用 netstat 命令检测:

netstat -plntu

Jenkins 已经安装好了并运行在 8080 端口。

第三步 - 为 Jenkins 安装和配置 Apache 作为反向代理

在这篇指南中,我们会在一个 Apache web 服务器中运行 Jenkins,我们会为 Jenkins 配置 apache 作为反向代理。首先我会安装 apache 并启用一些需要的模块,然后我会为 Jenkins 用域名 myjenkinsid 创建虚拟主机文件。请在这里使用你自己的域名并在所有配置文件中出现的地方替换。

从 Ubuntu 仓库安装 apache2 web 服务器。

apt-get install apache2

安装完成后,启用 proxy 和 proxy_http 模块以便将 apache 配置为 Jenkins 的前端服务器/反向代理。

a2enmod proxy

a2enmod proxy_http

下一步,在 sites-available 目录创建新的虚拟主机文件。

cd /etc/apache2/sites-available/

vim jenkinsconf

粘贴下面的虚拟主机配置。

<Virtualhost :80>

ServerName myjenkinsid

ProxyRequests Off

ProxyPreserveHost On

AllowEncodedSlashes NoDecode

<Proxy http://localhost:8080/>

Order deny,allow

Allow from all

</Proxy>

ProxyPass / http://localhost:8080/ nocanon

ProxyPassReverse / http://localhost:8080/

ProxyPassReverse / http://myjenkinsid/

</Virtualhost>

保存文件。然后用 a2ensite 命令激活 Jenkins 虚拟主机。

a2ensite jenkins

重启 Apache 和 Jenkins。

systemctl restart apache2

systemctl restart jenkins

检查 Jenkins 和 Apache 正在使用 80 和 8080 端口。

netstat -plntu

第四步 - 配置 Jenkins

Jenkins 用域名 'myjenkinsid' 运行。打开你的 web 浏览器然后输入 URL。你会看到要求你输入初始管理员密码的页面。Jenkins 已经生成了一个密码,因此我们只需要显示并把结果复制到密码框。

用 cat 命令显示 Jenkins 初始管理员密码。

cat /var/lib/jenkins/secrets/initialAdminPassword

a1789d1561bf413c938122c599cf65c9

将结果粘贴到密码框然后点击 Continue。

现在为了后面能比较好的使用,我们需要在 Jenkins 中安装一些插件。选择 Install Suggested Plugin,点击它。

Jenkins 插件安装过程:

安装完插件后,我们需要创建一个新的管理员密码。输入你的管理员用户名、密码、电子邮件等,然后点击 'Save and Finish'。

点击 start 开始使用 Jenkins。你会被重定向到 Jenkins 管理员面板。

成功完成 Jenkins 安装和配置。

第五步 - Jenkins 安全

在 Jenkins 管理员面板,我们需要为 Jenkins 配置标准的安全,点击 'Manage Jenkins' 和 'Configure Global

Security'。

Jenkins 在 'Access Control' 部分提供了多种认证方法。为了能够控制所有的用户权限,我选择了 'Matrix-based Security'。在复选框 'User/Group' 中启用 admin 用户。通过勾选所有选项给 admin 所有权限,给 anonymous 只读权限。现在点击 'Save'。

你会被重定向到面板,如果出现了登录选项,只需输入你的管理员账户和密码。

第六步 - 测试一个简单的自动化任务

在这一部分,我想为 Jenkins 服务测试一个简单的任务。为了测试 Jenkins 我会创建一个简单的任务,并用 top 命令查看服务器的负载。

在 Jenkins 管理员面板上,点击 'Create New Job'。

输入任务的名称,在这里我输入 'Checking System',选择 Freestyle Project 然后点击 OK。

进入 Build 标签页。在 Add build step,选择选项 Execute shell。

在输入框输入下面的命令。

top -b -n 1 | head -n 5

点击 Save。

现在你是在任务 'Project checking system' 的任务页。点击 Build Now 执行任务 'checking system'。

任务执行完成后,你会看到 Build History,点击第一个任务查看结果。

下面是 Jenkins 任务执行的结果。

到这里就介绍完了在 Ubuntu 1604 中用 Apache web 服务器安装 Jenkins 的内容。

原文地址: https://blogkaygbcom/210html

谈及静态网站的好处,无非是快速轻量,甚至无需购买服务器,使用github pages或者coding等托管即可实现。同时,jsdelivr可对github公开仓库的静态资源进行加速,并且自带全球cdn,快速,并且完全免费。

近期,我的博客网站也迁移到了hexo,并托管在github pages,由于之前申请过腾讯云开发的99元静态网站托管服务,本着不用白不用的原则,我把国内的线路以及博客生成的页面都放在了腾讯云开发静态网站托管服务上。

首先在本地安装hexo环境,配置好主题以及自定义的配置,然后将整个hexo目录推送到github私有仓库。私有仓库在接受到push之后,使用github action进行hexo g和hexo deploy,将生成的静态文件推送到另一个以 用户名githubio 为名称的仓库。

如你所见,我们需要使用两个github仓库来构建我们的个人博客,其中私有仓库(我们可以将名称设置为blog-source)作为博客源文件保存目录,包含所有的hexo配置文件以及我们的主题文件。

这样的好处就是,我们可以完整保留hexo的目录,不用担心文件丢失的问题,还有就是我们可以直接在github网页端直接进行文章的写作,并且支持原生的github markdown格式。

在我们commit之后 github action会自动帮我们构建以及发布,我们只需要安心写作即可。

这一步可以根据hexo官方文档来进行配置。

https://hexoio/zh-cn/docs/

一个是私有的仓库,用来存放hexo所有的源文件,另一个是公开的以 用户名githubio 的仓库。

使用ssh-keygen生成一组公私秘钥对

在 Settings -> SSH and GPG keys 添加刚刚生成的公钥,名称随意。

在私有仓库的 Settings -> Secrets 里添加刚刚生成的私钥,名称为 ACTION_DEPLOY_KEY 。

在hexo目录创建 github 文件夹,并在里面创建 workflows 文件夹,然后在里面新建 blogyml

贴出我的GitHub action配置文件,后面再进行讲解。

其中,在31至38行内,可以添加自己所使用的hexo插件,如果本地测试的时候使用了此插件,一定要记得将那个插件的npm安装命令写在那里。

云开发Cloudbase提供了可直接使用的action: https://githubcom/marketplace/actions/tencent-cloudbase-github-action

在腾讯云开发控制台获取token: https://consolecloudtencentcom/cam/capi

然后在项目 Setting/ Secrets 里设置 SECRET_ID , SECRET_KEY , ENV_ID 信息

根据文档做出修改然后添加在blogyml后面

同时,目前我也遇到很多问题,包括到现在为止还无法解决的问题。

一般来说是无法推送 git 目录的,如果你使用的主题是直接使用git clone下来的,那么一定就会存在 git 目录,这时我们可以在gitignore文件内忽略此目录或者直接删除git文件夹。由于我是直接删掉文件夹,所以另一种方式请大家自行尝试。

其实我最开始是想在公开仓库设置一个github action,在推送到公开仓库之后再由公开仓库的action推送到腾讯云 开发,但是不知道为何hexo deploy的时候无论如何都不会将 github 文件夹推送上去,即使配置了 skip_render 和 include 也不行,但是我在本地hexo g的时候就可以在public目录生成 github 文件夹,并且我在网页端公开仓库尝试创建action文件,可以推送成功,但是私有仓库推送之后action文件就会被覆盖,目前暂时无法解决这个问题。

所以只能妥协在同一个仓库进行构建推送,由于处理的文件较多,所以每次的部署都会给我发送一封构建失败的邮件,但它其实是已经部署成功了,我查找了很多的资料,目前暂未解决这个问题,如果您遇到这个问题并且具有解决办法,烦请您告知,非常感谢!

https://juejinim/post/5da03d5e6fb9a04e046bc3a2

1 Puppet

Puppet是一款开源工具,旨在为系统管理员大大简化自动化和报告工作。它基本上是款配置管理软件,有助于配置和维护企业网络中的服务器及其他系统。系统管理员通常每天要花大量时间重复做同样的任务。他们总是想要使这些任务实现自动化,以便有更多的时间来处理其他项目或学习新的概念和脚本语言。管理员可以通过编写脚本使任务实现自动化,但是在拥有大型网络的公司,脚本不是很方便。这时候,Puppet就大有用场,因为借助Puppet,你可以:

为网络上的每个主机定义独特的配置设置;

不断监测网络,查找任何变动;

帮助高效地创建和管理用户;

帮助管理每个开源工具的配置设置。

2 CHEF

Chef是另一款可供Linux系统管理员使用的流行的自动化工具。它用Ruby和Erlang编写,对于配置和维护公司的服务器大有帮助,无论贵公司拥有十台服务器还是上百台。它还可以帮助你将云端服务器与亚马逊EC2、OpenStack、RackSpace或谷歌云整合起来。Chef可以将你的基础设施转变成代码,那样借助代码,你只要更改几行代码,就能轻松撤下一台服务器,从而让你轻松管理服务器。物理节点还意味着:将变更内容部署到生产环境之前,可以对它轻松进行测试,你还可以轻松控制针对代码的每次更新的版本。Chef DK为你提供了测试和管理配置的所有工具,Chef Server充当你所有“菜谱”(recipe)的存储库,可以管理与服务器连接的每个节点。Chef客户软件在每个客户端上运行,时不时收到服务器方面的信息,从而更新其配置设置。

3 CFEngine

面向Linux系统管理员的下一款自动化工具是CFEngine,这是另一个领先的自动化系统,可帮助你轻松管理整套基础设施,并使之实现自动化。一旦你使用CFEngine为网络中的系统定义了配置,那么CF Engine就会自动确保配置符合规范。不用说,如果你的网络中有10个或100个节点,可以在短短几秒内更新或改动任何一个节点或所有节点。CFEngine之所以受到许多Linux系统管理员的青睐,是由于它运行成本低、响应速度快、具有自愈合功能。

4 Ansible

Ansible是Red Hat提供的一款开源配置管理和IT企业自动化软件,随带一种简单的编程语言,让系统管理员能够高效地处理自动化和配置过程。Ansible由控制机器和控制机器控制的节点组成。节点是通过SSH来加以控制的。Ansible的主要特点之一是代理并不是部署到节点 ,但是完全借助SSH来进行通信。易学易用、具有一致性、高可靠性和安全性是让Ansible脱颖而出的其他特性。Ansible的唯一局限就是无法配置裸机和虚拟机。

5 Foreman

Foreman是另一种用于取证分析的开源配置管理工具。Foreman提供了仪表板,我们可以通过仪表板来配置裸机服务器和虚拟机。默认情况下,无论我们何时安装Foreman,它都使用Puppet作为配置工具。不过借助插件,Foreman还支持与其他配置管理工具整合起来,比如Chef、Puppet、Ansible、Salt及其他众多工具。Foreman自动化工具还随带各种各样的接口,包括命令行接口、Web前端以及REST API。Foreman的其他一些显著功能包括如下:

通过仪表板,管理Puppet模块和puppet类方面的改动;

很容易从Foreman仪表板来管理Puppet环境;

由于仪表板,创建主机群(Hosts Group)以及为主机群添加puppet模块变得很轻松;

可以从Foreman仪表板,轻松添加Puppet模块或推送到节点。

6 Katello

Katello是另一种开源自动化工具。换而言之,我们可以说Katello是一种开源版的Red Hat satellite Server;如果我们不想花钱在企业产品及其支持上,就可以用它来代替Red Hat satellite Server。Katello已被Foreman收购,Foreman中的大部分功能在Katello中也得到了支持。Katello Server的主要功能如下:

给基于Linux的服务器(RHEL和CentOS )打补丁;

使用Pulp Service来同步代码库;

使用Foreman进行各种配置;

它还可以处理订阅内容管理,并审计所有已部署的软件包;

借助Katello,你可以为所有主机创建主机群,另外还可以在单一主机或一群主机上批量执行操作。

7 Nagios

Nagios现在名为Nagios Core,它是一种开源自动化和监控工具,可以管理基础设施中的所有系统。它还提供警报服务,一旦察觉到你的网络中哪里有问题,就会提醒系统管理员。借助SNMP以及Nagios,系统管理员还可以控制并管理打印机、路由器和交换机。Nagios让我们得以创建事件处理工具,一旦某个应用程序及其服务停运,就可以自动重启出现故障的那个应用程序及其服务。

电话系统部署的一个非常必要的环境是对终端的部署。很多电话系统都支持话机的终端部署。因为开源FusionPBX本身支持的终端类型非常多,部署话机出现一些问题也在所难免。如何在确认SIP 话机模板本身没有问题的情况下,对FusionPBX进行排查是一个比较头疼的问题。现在,我们介绍一种非常简单的办法,用户可以通过FusionPBX 的URL定制输入话机MAC地址,对系统日志进行检查就可以获得界面配置的错误信息。

具体的步骤如下:

首先,用户需要登录话机界面,获得其MAC地址。

然后访问fusionPBX 界面,访问app 终端部署的URL和话机MAC地址, 语法格式如下:

http://FusioNPBX的IP地址/app/provision/indexphpmac= f8a03d660140

这里也可以是https 地址。

然后,通过SSH登录系统后台,查看lot日志:

用户可以通过 cat 获取和话机相关的log日志:

因为,FusionPBX 很多时候可能是部署在公网,为了保证服务器的安全,防止其他的终端对此服务器进行自动部署设置,用户可以通过终端部署的安全设置对话机进行安全设定,仅允许某些指定的话机地址进行自动部署设置。具体设置路径: Default Setting-> provision->cidr, 用户可以输入多个地址段。

话机auto provision安全高级设置:

参考资料:

wwwfusionpbxcn

wwwhiastarcom

wwwdinstarcn

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 多台云主机的如何实现一键自动部署发布?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情