2017-08-26 20 views
1

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で接続できます。私は間違って何をしているのですか、私が理解できない部分がありますか?

+0

は、あなたが持っていると仮定すると、DNSアドオンを有効に、 'カール・ジェンキンス-discovery.default.svc.cluster.local'があなたに何を与えるクラスタ内から、ん? –

+0

あなたは「雲なし」と言っていますが、https://github.com/GoogleCloudPlatform/continuous-deployment-on-kubernetesを試して何がうまくいかないのか分かりますか?またはこの非クラウドウォークスルー:https://blog.kublr.com/using-jenkins-and-kubernetes-for-continuous-integration-and-delivery-4e4341aff013 – burnettk

+0

あなたは 'kubectl get ep jenkins-ui - n ci'?あなたの 'セレクタ'やJenkinsのマスターにある 'readinessProbe'には問題がありますか? –

答えて

0

解決済みです。間違いはセレクターで、私にとってはそれほど明確ではなかった部分です。私はこの問題を引き起こしたと思われるものを別のノーセイセレクターで使用していました。これは、働いていた:

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: master 
    ports: 
     - protocol: TCP 
     port: 50000 
     targetPort: 50000 
     name: slaves 
+0

あなたは歓迎です:) –

関連する問題