GitLabの同じサーバー上のCIランナーですか?


12

会社でGitLabサーバーを設定していますが、今はGitLab CIを追加しています。

このタスクを開始する前に、GitLabとGitLab CIで使用される同じサーバー上でランナーを実行する際に不利な点があるかどうかを理解したいと思います。

セキュリティ上の懸念があることを読みましたが、内部でのみ使用しているため、これが問題になるとは思いません。

何か不足していますか?

回答:


11

次の状況を想像してください。

  • 社内の開発者が会社に損害を与えたい(上司が妻と寝ているため給料が不足していると考えているため、理由は関係ない)それを消去します。次のコミット、驚きで、プロジェクトのすべてのソースコードが失われます(ただし、バックアップを行い、テストしましたか?)

  • または、同じ開発者は、リポジトリのバックアップが同じマシンで構成されていることに気付きます。彼は単体テストでこの構成を変更し、バックアップに別のリポジトリが含まれるようになり、1か月(バックアップが保持される時間)待機します。すべてのバックアップが破損したので、彼はサーバーからソースコードを消去するユニットテストをコミットできます。

  • または、インターンがソースコードを競合他社に販売したいと考えています。アクセスを注意深く設定し、彼が作業に必要なものだけに制限しました。同時に、彼は単体テストを通じてリポジトリ自体に無制限にアクセスでき、完全なダンプを実行できます。

ユニットテストが制限された権限のコンテキストで実行され、テストに必要なディレクトリとファイル以外にアクセスできない場合を除き、CIサーバーとリポジトリを保持するサーバーを混在させることは実際に危険です。

もう1つの問題は、バージョン管理サーバーの高速化が期待されていることです。同じマシンにインストールされたCIサーバーにより、コミットが遅くなる場合があります。


8
私たちは3人の開発者です...私たちの誰かが会社に害を与えたいなら、彼はそれを何千もの方法で行うことができます=(...唯一の問題はパフォーマンスの低下ですトラブルですか?ありがとう!
フェズブラスタ14

ps:chrootはどうですか?プロセスを安全にするために使用することはできませんか?
フェズブラスタ14

4
@FezVrasta:セキュリティがパフォーマンスの問題でもなければ、問題でもない場合、私が見ることができる別個のマシンを持つことの唯一の利点は、将来のスケーラビリティです。しかし、率直に言って、スケーラビリティの問題が現れる前に変更を行うことは、時期尚早な最適化に似ています。
Arseni Mourzenko

@FezVrasta:「chrootはどうですか?プロセスを安全にするために使用することはできませんか?」-私はその質問に答えるのに十分なUnixセキュリティのスキルを持っていません。
Arseni Mourzenko

0

git用の中央の「すべてを知っている」サーバーが存在しないことを考えると、これは他のソースコード管理システムの場合のように悪いことではありません。

他のgitサーバー(テスト済み)へのオフサイトでのgitサーバーの自動sykが提供されていれば(小規模な会社ではこのセットアップについて心配する必要はありません)。

理想的には、開発者がオフセットサーバーgitサーバーに変更をプッシュし、CIサーバーがオフセットサーバーから料金を引き出すことを望んでいます。これにより、すべてのチェックインが完了するとオフサイトサーバーがテストされます。

その後、開発者が常に時間を節約するためにオンサイトサーバーからプルする場合、それは問題ではありません。


1
2台のサーバーが必要な場合...なぜ2台目のサーバーでランナーを実行しないのですか?
フェズVrasta 14

@FezVrasta、「オフサイトサーバー」はgitホスティングを販売するだれでもかまいません。所有するサーバーである必要はありません。また、インターネット上にあるため、そこからプルするのは遅くなります。
イアン14

1
私は私の会社のためにそれを設定してい、我々は我々自身のサーバーを使用して...
フェズVrasta
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.