N
N
Nick S2015-06-15 22:13:30
git
Nick S, 2015-06-15 22:13:30

Deploy to many remote servers. What tools to choose?

Good afternoon.
There is initial data:
approximately 100 separate servers on which small sites are spinning (ala landing pages).
Now all the changes are uploaded by a team of programmers via FTP, which, of course, is terrible.
What is required:
- change control
- multi-profile (for each programmer)
- the ability to restrict access to a particular server
What is the most adequate solution in your opinion? All servers are "their own" and can be configured as needed with anything connected.
As an option, GIT is being considered, but there are no particular ideas how to systematize and combine it all into one configuration file.
Thank you!
UPD: A couple of clarifications:
- all sites are written in PHP
- all sites are independent, i.e. this is not a 1 x 100 deployment, but 100 x 100.
- First of all, I'm interested in restricting access and logging, with one configuration file / service.

Answer the question

In order to leave comments, you need to log in

2 answer(s)
D
dmitriy, 2015-06-16
@OneArt

why deploy 100 to 100 at once? Are you updating the core and want it to apply to all servers at once?
Usually the scheme is as follows:
1. There is a git repo for each project, a post hook is added to the Jenkins server
2. Projects are created on the server running Jenkins, each project does: 1) updates via git, 2) updates dependencies, 3) tests the project, 4 ) uploads to a remote server
3. When committing to the master branch or merging with the master branch by the developer, the request goes to jenkins and it does its job. For your case, 1 and 4 are required
Instead of jenkins, you can use any cloud CI service, I use codeship

S
sim3x, 2015-06-15
@sim3x

ansible The question is
too general The question
is easy to google

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question