Merge pull request #1691 from ibuildthecloud/staticpod

Suppport static pods at ${datadir}/agent/staticpods
This commit is contained in:
Darren Shepherd 2020-05-05 14:35:45 -07:00 committed by GitHub
commit 70ddc799bd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 12 additions and 0 deletions

View File

@ -29,6 +29,10 @@ import (
"k8s.io/apimachinery/pkg/util/net"
)
const (
DefaultPodManifestPath = "pod-manifests"
)
func Get(ctx context.Context, agent cmds.Agent) *config.Node {
for {
agentConfig, err := get(&agent)
@ -476,6 +480,7 @@ func get(envInfo *cmds.Agent) (*config.Node, error) {
nodeConfig.AgentConfig.DisableNPC = controlConfig.DisableNPC
nodeConfig.AgentConfig.DisableKubeProxy = controlConfig.DisableKubeProxy
nodeConfig.AgentConfig.Rootless = envInfo.Rootless
nodeConfig.AgentConfig.PodManifests = filepath.Join(envInfo.DataDir, DefaultPodManifestPath)
nodeConfig.DisableSELinux = envInfo.DisableSELinux
return nodeConfig, nil

View File

@ -75,6 +75,12 @@ func startKubelet(cfg *config.Agent) {
"anonymous-auth": "false",
"authorization-mode": modes.ModeWebhook,
}
if cfg.PodManifests != "" && argsMap["pod-manifest-path"] == "" {
argsMap["pod-manifest-path"] = cfg.PodManifests
}
if err := os.MkdirAll(argsMap["pod-manifest-path"], 0755); err != nil {
logrus.Errorf("Failed to mkdir %s: %v", argsMap["pod-manifest-path"], err)
}
if cfg.RootDir != "" {
argsMap["root-dir"] = cfg.RootDir
argsMap["cert-dir"] = filepath.Join(cfg.RootDir, "pki")

View File

@ -49,6 +49,7 @@ type Containerd struct {
}
type Agent struct {
PodManifests string
NodeName string
NodeConfigPath string
ServingKubeletCert string