func CreateNodeCerts(nodeArgs *start.NodeArgs) error { getSignerOptions := &admin.GetSignerCertOptions{ CertFile: admin.DefaultCertFilename(nodeArgs.MasterCertDir, "ca"), KeyFile: admin.DefaultKeyFilename(nodeArgs.MasterCertDir, "ca"), SerialFile: admin.DefaultSerialFilename(nodeArgs.MasterCertDir, "ca"), } createNodeConfig := admin.NewDefaultCreateNodeConfigOptions() createNodeConfig.GetSignerCertOptions = getSignerOptions createNodeConfig.NodeConfigDir = nodeArgs.ConfigDir.Value() createNodeConfig.NodeName = nodeArgs.NodeName createNodeConfig.Hostnames = []string{nodeArgs.NodeName} createNodeConfig.ListenAddr = nodeArgs.ListenArg.ListenAddr createNodeConfig.APIServerCAFile = admin.DefaultCertFilename(nodeArgs.MasterCertDir, "ca") createNodeConfig.NodeClientCAFile = admin.DefaultCertFilename(nodeArgs.MasterCertDir, "ca") if err := createNodeConfig.Validate(nil); err != nil { return err } if err := createNodeConfig.CreateNodeFolder(); err != nil { return err } return nil }
func (o NodeOptions) CreateNodeConfig() error { getSignerOptions := &admin.GetSignerCertOptions{ CertFile: admin.DefaultCertFilename(o.NodeArgs.MasterCertDir, "ca"), KeyFile: admin.DefaultKeyFilename(o.NodeArgs.MasterCertDir, "ca"), SerialFile: admin.DefaultSerialFilename(o.NodeArgs.MasterCertDir, "ca"), } var dnsIP string if len(o.NodeArgs.ClusterDNS) > 0 { dnsIP = o.NodeArgs.ClusterDNS.String() } masterAddr, err := o.NodeArgs.KubeConnectionArgs.GetKubernetesAddress(o.NodeArgs.DefaultKubernetesURL) if err != nil { return err } nodeConfigDir := o.NodeArgs.ConfigDir.Value() createNodeConfigOptions := admin.CreateNodeConfigOptions{ GetSignerCertOptions: getSignerOptions, NodeConfigDir: nodeConfigDir, NodeName: o.NodeArgs.NodeName, Hostnames: []string{o.NodeArgs.NodeName}, VolumeDir: o.NodeArgs.VolumeDir, ImageTemplate: o.NodeArgs.ImageFormatArgs.ImageTemplate, AllowDisabledDocker: o.NodeArgs.AllowDisabledDocker, DNSDomain: o.NodeArgs.ClusterDomain, DNSIP: dnsIP, ListenAddr: o.NodeArgs.ListenArg.ListenAddr, NetworkPluginName: o.NodeArgs.NetworkPluginName, APIServerURL: masterAddr.String(), APIServerCAFile: getSignerOptions.CertFile, NodeClientCAFile: getSignerOptions.CertFile, Output: o.Output, } if err := createNodeConfigOptions.Validate(nil); err != nil { return err } if err := createNodeConfigOptions.CreateNodeFolder(); err != nil { return err } return nil }