<p>Is there a hard limit on the number of service accounts that can be created in  Kubernetes?</p>

<p>I couldn't find any documentation where this is stated.</p>

<p>It depends on the storage behind a service account registry, as coded in <a href="https://github.com/kubernetes/kubernetes/tree/master/pkg/registry/core/serviceaccount" rel="nofollow noreferrer"><code>kubernetes/kubernetes/pkg/registry/core/serviceaccount</code></a></p>

<pre><code>// storage puts strong typing around storage calls
type storage struct {
    rest.StandardStorage
}

// NewRegistry returns a new Registry interface for the given Storage. Any mismatched
// types will panic.
func NewRegistry(s rest.StandardStorage) Registry {
    return &amp;storage{s}
}
</code></pre>

<p>A storage is a REST call to, for instance, <a href="https://github.com/kubernetes/kubernetes/blob/9bd4f12c336af339c35e773e1d71a37cad342f57/pkg/registry/core/serviceaccount/storage/storage_test.go#L33" rel="nofollow noreferrer">an ETCD storage</a>.</p>

<pre><code>func newStorage(t *testing.T) (*REST, *etcdtesting.EtcdTestServer) {
etcdStorage, server := registrytest.NewEtcdStorage(t, "")
</code></pre>

<p>So this is limited by the <strong><a href="https://coreos.com/etcd/docs/latest/dev-guide/limit.html" rel="nofollow noreferrer">limits of an ETCD</a></strong>, not so much the number of entries, but rather the storage <em>size</em>. </p>
