十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
這篇文章主要介紹“如何使用Terraform在AWS上部署Jenkins”,在日常操作中,相信很多人在如何使用Terraform在AWS上部署Jenkins問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對(duì)大家解答”如何使用Terraform在AWS上部署Jenkins”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!
創(chuàng)新互聯(lián)建站是一家專注于成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、外貿(mào)營銷網(wǎng)站建設(shè)與策劃設(shè)計(jì),東洲網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)建站做網(wǎng)站,專注于網(wǎng)站建設(shè)十年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:東洲等地區(qū)。東洲做網(wǎng)站價(jià)格咨詢:18982081108
先決條件
AWS Amazon中的EC2實(shí)例來測試此技術(shù)說明。
安裝terraform作為“基礎(chǔ)結(jié)構(gòu)即代碼”工具。
安裝Jenkins及其工作
首先,我們需要觀看本節(jié),因?yàn)檫@是我們可以找到如何通過腳本bash安裝Jenkins的過程,該bash腳本是作為通用腳本制作的,可在不同的CentOS Linux上使用。此安裝分為5部分,首先我們將安裝并啟動(dòng)Jenkins,然后我們將注冊(cè)一個(gè)默認(rèn)用戶并安裝基本插件,最后,注冊(cè)我們最好的朋友HelloWorld job,這將是一個(gè)很好的例子一個(gè)好的開始。
jenkins_user=$1 jenkins_password=$2 jenkins_address=http://localhost:8080 set -x function installing() { #Installing some necessary dependencies sudo yum -y update sudo yum -y install wget java-1.8.0 nano nc #Installing jenkins, instructions located in http://pkg.jenkins-ci.org/redhat/ sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key sudo yum install -y jenkins sleep 1 echo "[INFO] Jenkins was installed" }
請(qǐng)注意,bash腳本中的plugins函數(shù)對(duì)于首次安裝登錄Jenkins時(shí)建議的所有插件是必需的,這是自定義此工具的一部分,并且是注冊(cè)默認(rèn)用戶所必需的。循環(huán)以檢查Jenkins 您還記得啟動(dòng)Jenkins服務(wù)器的公告嗎?如果您不想再看到它,則應(yīng)該實(shí)現(xiàn)插件功能。 下面是一個(gè)簡單的任務(wù),介紹了如何通過Jenkins CLI在Jenkins中添加作業(yè),這是帶有字符串參數(shù)的Pipeline作業(yè)。 將Jenkins部署為服務(wù)器 有幾個(gè)屬性需要設(shè)置: access_key和secret_key:用作訪問密鑰,用于驗(yàn)證命令請(qǐng)求。 jenkins_key_name:密鑰對(duì)文件的名稱,將有助于通過ssh連接到我們的實(shí)例。如果您需要?jiǎng)?chuàng)建密鑰對(duì),請(qǐng)通過我的安全憑證部分中的處理程序進(jìn)入您的AWS賬戶。注意,在此示例中,我們使用了位于該項(xiàng)目的Template文件夾中的key-pair.pem,用您的憑據(jù)替換此文件及其在項(xiàng)目中的名稱。 amis:此屬性可以是一個(gè)列表,并具有可以在Amazon Machine Instances中輕松找到的AMI實(shí)例ID,如果您想更改此AMI實(shí)例,請(qǐng)注意是否已安裝AMI已安裝systemctl,因?yàn)锳mazon Linux不支持systemclt或服務(wù)命令基于其基于CentOS / RHEL的版本,因此為了避免花費(fèi)大量時(shí)間搜索已經(jīng)配置了他的systemctl的AMI實(shí)例,請(qǐng)嘗試使用在此項(xiàng)目中配置的AMI實(shí)例。 一旦配置了所有屬性,請(qǐng)執(zhí)行命令行terraform init初始化工作文件夾,執(zhí)行terraform計(jì)劃以監(jiān)視所有部署計(jì)劃,一旦檢查完成,請(qǐng)執(zhí)行命令行terraform申請(qǐng)部署基礎(chǔ)架構(gòu)。 進(jìn)入詹金斯 復(fù)制公共DNS,并在瀏覽器上鍵入此值,然后鍵入端口8080(如鏡像所示),記住所有可用端口在main.tf文件的安全組部分中。用戶和密碼被配置為variables.tf文件中的屬性,因此在這種情況下,我們的用戶和密碼為“ Jenkins”。 到此,關(guān)于“如何使用Terraform在AWS上部署Jenkins”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!
該文件中提供了常規(guī)變量,請(qǐng)注意一些屬性,這些屬性需要由您配置的AWS CLI變量替換。請(qǐng)參閱《AWS CLI命令參考》中的更多信息。variable "region" { default = "us-east-1" description = "AWS region" } variable "access_key" { default = "HEREYOURACCESSKEY" description = "AWS credentials file path" } variable "secret_key" { default = "HEREYOURSECRETKEY" description = "AWS credentials file path" } variable "jenkins_user_name" { description = "jenkins" default = "jenkins" } variable "jenkins_user_password" { description = "jenkins" default = "jenkins" } variable "jenkins_name" { description = "Jenkins name" default = "jenkins" } variable "jenkins_instance_type" { default = "t2.micro" } variable "jenkins_key_name" { default = "key-pair" description = "SSH key located in tyour AWS account." } variable "amis" { description = "ami to spawn." default = { us-east-1 = "ami-0c94855ba95c71c99" } }
resource "aws_instance" "jenkins" { instance_type = "${var.jenkins_instance_type}" security_groups = ["${aws_security_group.security_group_jenkins.name}"] ami = "${lookup(var.amis, var.region)}" key_name = "${var.jenkins_key_name}" # Add jenkins server startup provisioner "file" { connection { user = "ec2-user" host = "${aws_instance.jenkins.public_ip}" timeout = "1m" private_key = "${file("templates/${var.jenkins_key_name}.pem")}" } source = "templates/jenkins_startup.sh" destination = "/home/ec2-user/jenkins_startup.sh" } # Add jenkins job provisioner "file" { connection { user = "ec2-user" host = "${aws_instance.jenkins.public_ip}" timeout = "1m" private_key = "${file("templates/${var.jenkins_key_name}.pem")}" } source = "templates/jobmaster.xml" destination = "/home/ec2-user/jobmaster.xml" } provisioner "remote-exec" { connection { user = "ec2-user" host = "${aws_instance.jenkins.public_ip}" timeout = "1m" private_key = "${file("templates/${var.jenkins_key_name}.pem")}" } inline = [ "chmod +x /home/ec2-user/jenkins*.sh", "/home/ec2-user/jenkins_startup.sh ${var.jenkins_user_name} ${var.jenkins_user_password}" ] } }
可以在AWS管理控制臺(tái)中找到,單擊“實(shí)例”部分,然后應(yīng)如下創(chuàng)建一個(gè)新實(shí)例。
本文題目:如何使用Terraform在AWS上部署Jenkins
文章位置:http://m.jiaotiyi.com/article/pgshed.html