JenkinsをローカルKubernetesクラスタ(クラウドなし)に展開します。 私はJenkinsの上に2つのサービスを作成します。 ポート8080
のNodePortタイプのサービス(ランダムポートにマップされ、クラスタ外でアクセスできます。を使用してクラスタ内でアクセスすることもできます)。大丈夫だ。Kubernetes:クラスタ内のClusterIP Serviceにtelnetできません。
私の2番目のサービスは私のJenkinsのスレーブが接続できるようになっています。 私は私のサービスの種類としてCLUSTERIP(デフォルト)を選択します。私は、サービスの3種類について読ん
:
CLUSTERIP- :
は、クラスタ上でサービスを公開内部IP。この値を にすると、クラスタ内からのみサービスにアクセスできます。
- NodePortは:50000外クラスタを公開するため
- ロードバランサー必要はありません。 :私はサービスを私の
.yml
を作成するためにされたクラウドここ
で働いていませんよ
kind: Service
apiVersion: v1
metadata:
name: jenkins-ui
namespace: ci
spec:
type: NodePort
selector:
app: master
ports:
- protocol: TCP
port: 8080
targetPort: 8080
name: master
---
kind: Service
apiVersion: v1
metadata:
name: jenkins-discovery
namespace: ci
spec:
#type: ClusterIP
selector:
app: jenkins
ports:
- protocol: TCP
port: 50000
targetPort: 50000
name: slaves
問題は私のスレーブがポート50000に接続できないことです。 私は電話をかけようとしましたネットClusterIP:port
のサービスジェンキン発見と私は接続を拒否しました。 jenkins-uiサービスのClusterIP:port
にtelnetで接続できます。私は間違って何をしているのですか、私が理解できない部分がありますか?
は、あなたが持っていると仮定すると、DNSアドオンを有効に、 'カール・ジェンキンス-discovery.default.svc.cluster.local'があなたに何を与えるクラスタ内から、ん? –
あなたは「雲なし」と言っていますが、https://github.com/GoogleCloudPlatform/continuous-deployment-on-kubernetesを試して何がうまくいかないのか分かりますか?またはこの非クラウドウォークスルー:https://blog.kublr.com/using-jenkins-and-kubernetes-for-continuous-integration-and-delivery-4e4341aff013 – burnettk
あなたは 'kubectl get ep jenkins-ui - n ci'?あなたの 'セレクタ'やJenkinsのマスターにある 'readinessProbe'には問題がありますか? –