@classmethod
    def initialize(cls, path, name, begin=None, cluster_id=None):
        if cluster_id is None:
            cluster_id = uuid4()

        dn = DistinguishedName(
            commonName=name,
            organizationalUnitName=bytes(cluster_id),
        )
        keypair = flocker_keypair()
        request = keypair.keypair.requestObject(dn)
        serial = os.urandom(16).encode(b"hex")
        serial = int(serial, 16)
        certificate = create_certificate_authority(
            keypair.keypair, dn, request, serial,
            EXPIRY_20_YEARS, b'sha256', start=begin
        )
        credential = FlockerCredential(
            path=path, keypair=keypair, certificate=certificate)
        credential.write_credential_files(
            AUTHORITY_KEY_FILENAME, AUTHORITY_CERTIFICATE_FILENAME)
        instance = cls(credential=credential)
        return instance
Generate new private/public key pair and self-sign, then store in given
dataset/ETHPy150Open ClusterHQ/flocker/flocker/ca/_ca.py/RootCredential.initialize