我可以编译/运行/使用没有Istio的Citadel CA standalone吗?我试着搜索citadel github,但没有找到相关的结果。
发布于 2018-12-07 19:52:12
你找不到任何关于城堡的信息,因为那里什么都没有。我在istio存储库中找到了deployments:如您所见:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: istio-citadel
namespace: {ISTIO_NAMESPACE}
spec:
replicas: 1
template:
metadata:
labels:
istio: citadel
annotations:
sidecar.istio.io/inject: "false"
spec:
serviceAccountName: istio-citadel-service-account
containers:
- name: citadel
image: {CITADEL_HUB}/citadel:{CITADEL_TAG}
imagePullPolicy: IfNotPresent
command: ["/usr/local/bin/istio_ca"]
args:
- --append-dns-names=true
- --citadel-storage-namespace={ISTIO_NAMESPACE}
- --grpc-port=8060
- --grpc-hostname=citadel
- --self-signed-ca=false
- --signing-cert=/etc/cacerts/ca-cert.pem
- --signing-key=/etc/cacerts/ca-key.pem
- --root-cert=/etc/cacerts/root-cert.pem
- --cert-chain=/etc/cacerts/cert-chain.pem
volumeMounts:
- name: cacerts
mountPath: /etc/cacerts
readOnly: true
volumes:
- name: cacerts
secret:
secretName: cacerts
optional: true因此,你可以在Kubernetes中使用它而不需要完整的istio。要使用单机版,您可以尝试获取docker image from dockerhub:
docker pull istio/citadel:$tag并试着与之共事。希望能对你有所帮助
发布于 2018-12-07 20:03:07
我认为https://github.com/istio/istio/tree/master/security/cmd/istio_ca就是它;如果你有一个可以工作的Go构建环境,它可能会也可能不会在go install github.com/istio/istio/security/cmd/istio_ca上工作。
如果你只是想运行一些东西,你也可以考虑Hashicorp的Vault,它可以更直接地作为一个独立的服务运行。它包括a module to generate TLS certificates。(请注意,它使用证书的方式有点非传统:由于Vault期望服务在需要密钥时调用Vault,因此它可以在每次服务启动时生成一个新的(有效的、签名的)证书;这意味着您可以用保存和分发证书的问题来换取向Vault进行身份验证的问题。)
https://stackoverflow.com/questions/53658267
复制相似问题