Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Boxiang Sun
gitlab-ce
Commits
801f6ac4
Commit
801f6ac4
authored
Nov 13, 2017
by
Achilleas Pipinellis
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add Runner registration info
parent
2343d3a5
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
89 additions
and
5 deletions
+89
-5
doc/articles/runner_autoscale_aws/index.md
doc/articles/runner_autoscale_aws/index.md
+89
-5
No files found.
doc/articles/runner_autoscale_aws/index.md
View file @
801f6ac4
...
@@ -39,14 +39,26 @@ Install the prerequisites:
...
@@ -39,14 +39,26 @@ Install the prerequisites:
1.
[
Install Docker
](
https://docs.docker.com/engine/installation/#server
)
1.
[
Install Docker
](
https://docs.docker.com/engine/installation/#server
)
1.
[
Install Docker Machine
](
https://docs.docker.com/machine/install-machine/
)
1.
[
Install Docker Machine
](
https://docs.docker.com/machine/install-machine/
)
Before configuring the GitLab Runner, you need to first register it, so that
it connects with your GitLab instance:
1.
[
Obtain a Runner token
](
../../ci/runners/README.md
)
1.
[
Register the Runner
](
https://docs.gitlab.com/runner/register/index.html#gnu-linux
)
1.
When asked the executor type, enter
`docker+machine`
TIP:
**Tip:**
If you want every user in your instance to be able to use the autoscaled Runners,
register the Runner as a shared one.
You can now move on to the most important part, configuring GitLab Runner.
You can now move on to the most important part, configuring GitLab Runner.
## Configuring GitLab Runner to use the AWS machine driver
## Configuring GitLab Runner to use the AWS machine driver
Before configuring the GitLab Runner, you need to first register it, so that
Now that the Runner is registered, you need to edit its configuration file and
it connects with your GitLab instance
.
add the required options for the AWS machine driver
.
Edit
`/etc/gitlab-runner/config.toml`
:
Here's a full example of
`/etc/gitlab-runner/config.toml`
. Open it with your
editor and edit as you see fit:
```
toml
```
toml
concurrent
=
3
concurrent
=
3
...
@@ -97,8 +109,80 @@ check_interval = 0
...
@@ -97,8 +109,80 @@ check_interval = 0
]
]
```
```
Under
`MachineOptions`
you can add anything that the
[
AWS Docker Machine driver
Let's break it down to pieces.
supports
](
https://docs.docker.com/machine/drivers/aws/#options
)
.
-
Global section
```toml
concurrent = 3
check_interval = 0
```
-
`[[runners]]`
```toml
[[runners]]
name = "gitlab-aws-autoscaler"
url = "<url to your GitLab CI host>"
token = "<registration token>"
executor = "docker+machine"
limit = 4
```
-
`[runners.docker]`
```toml
[runners.docker]
image = "alpine"
privileged = true
disable_cache = false
volumes = ["/cache"]
```
-
`[runners.cache]`
```toml
[runners.cache]
Type = "s3"
ServerAddress = "s3.amazonaws.com"
AccessKey = "<your AWS Access Key ID>"
SecretKey = "<your AWS Secret Access Key>"
BucketName = "<the bucket where your cache should be kept>"
BucketLocation = "us-east-1"
Shared = true
```
-
`[runners.machine]`
```toml
[runners.machine]
IdleCount = 1
IdleTime = 1800
MaxBuilds = 100
MachineDriver = "amazonec2"
MachineName = "gitlab-docker-machine-%s"
OffPeakPeriods = ["* * 0-7,19-23 * * mon-fri *", "* * * * * sat,sun *"]
OffPeakIdleCount = 0
OffPeakIdleTime = 1200
MachineOptions = [
"amazonec2-access-key=XXXX",
"amazonec2-secret-key=XXXX",
"amazonec2-region=us-east-1",
"amazonec2-vpc-id=vpc-xxxxx",
"amazonec2-subnet-id=subnet-xxxxx",
"amazonec2-use-private-address=true",
"amazonec2-tags=Name,gitlab-runner-autoscale",
"amazonec2-security-group=docker-machine-scaler",
"amazonec2-instance-type=m4.2xlarge",
"amazonec2-ssh-user=ubuntu",
"amazonec2-ssh-keypath=/etc/gitlab-runner/certs/gitlab-aws-autoscaler",
"amazonec2-zone=a",
"amazonec2-root-size=32",
]
```
Under `MachineOptions` you can add anything that the [AWS Docker Machine driver
supports](https://docs.docker.com/machine/drivers/aws/#options).
## Cutting down costs with Amazon EC2 Spot instances
## Cutting down costs with Amazon EC2 Spot instances
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment